在Matplotlib中,我想繪製一個球體,其表面上有一個網格,分成30度的球面座標。用Matplotlib繪製球體網格
代碼:
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
u = np.linspace(0, 2 * np.pi, 13)
v = np.linspace(0, np.pi, 7)
x = 10 * np.outer(np.cos(u), np.sin(v))
y = 10 * np.outer(np.sin(u), np.sin(v))
z = 10 * np.outer(np.ones(np.size(u)), np.cos(v))
ax.plot_surface(x, y, z, rstride=1, cstride=1, color='w', shade=0)
plt.show()
可生產圖:
不過,我想在球體上的輪廓平滑,而不是繪製點之間直接畫。如果我增加取樣密度,我得到一個光滑的球體,但線被描繪過於密集:
我如何可以繪製在光滑球體用30度分隔線?
感謝。我試過你的代碼,但是它給了我下面的圖:http://i.stack.imgur.com/LBxAQ.png,這看起來不太合適..... – Karnivaurus
我認爲搖擺不定只是由於它是如何繪製...不知道。如果旋轉它,實際的黑線是平滑的。 – bornruffians