5

道路が建設される特定のエリアの幾何学的な高さを表す numpy 2d-array があります。を使用してこれを視覚化できscipy.misc.toimageます。ただし、その領域の単純な 3D ビューを取得したいと考えています。このデータを 3D イメージとしてプロットまたはレンダリングする簡単な方法はありますか?

4

1 に答える 1

9

おそらく、matplotlib のplot_surfaceまたはplot_wireframeを使用します。

import matplotlib.pyplot as plt
import numpy as np
import mpl_toolkits.mplot3d.axes3d as axes3d

np.random.seed(1)
fig, ax = plt.subplots(subplot_kw=dict(projection='3d'))
N = 100
X, Y = np.meshgrid(np.arange(N), np.arange(N))
heights = np.sin(2*np.pi*np.sqrt(X**2+Y**2)/N)
ax.plot_surface(X, Y, heights, cmap=plt.get_cmap('jet'))
plt.show()

ここに画像の説明を入力

これらの関数には、X、Y、Z の 3 つの 2D 配列が必要ですZ。これらの に関連付けられた規格Xと場所を生成するには、 を使用できます。YZnp.meshgrid

于 2013-04-27T13:04:43.807 に答える