MatPlotLibを使用して、球座標をプロットして球を描画します。私はそこに途中でいるが、私が正確にしたいものを達成することはできない。これまでのところMatPlotLibを使用してワイヤフレーム球をプロットする
、次のコード:
私が今できるようにしたいどのような、二つのこと、次のとおりです:
import numpy as np
import matplotlib.pyplot as plt
import mpl_toolkits.mplot3d.axes3d as axes3d
theta, phi = np.linspace(0, 2 * np.pi, 13), np.linspace(0, np.pi, 7)
THETA, PHI = np.meshgrid(theta, phi)
R = 1.0
X = R * np.sin(PHI) * np.cos(THETA)
Y = R * np.sin(PHI) * np.sin(THETA)
Z = R * np.cos(PHI)
fig = plt.figure()
ax = fig.add_subplot(1,1,1, projection='3d')
plot = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, linewidth=0, color='white', antialiased=False, alpha=1, frameon=False)
plt.show()
は、次のプロットを作成し
すべてのサーフェスがth e同色(白)。これに代えて、各サーフェス間に線(黒)を描きます。このようにして、球体は影付きのソリッドオブジェクトではなくワイヤフレームのように見えるはずです。私は
shade=False
をax.plot_surface(...)
に試しましたが、これは陰影を止めることで半分になります - しかし、すべてのサーフェスは同じ色になり、ワイヤフレームがなくても各サーフェスを区別することはできません。球体がそれ自身の上にあるように、プロットから軸を削除します。私は
ax.plot_surface(...)
にframeon=False
を試しましたが、これは私にエラー:AttributeError: Unknown property frameon
を与えます。
助けが必要ですか?
ありがとうございました!