我想在同一个图表上绘制我的所有球体,这应该是1乘1比1.我在几个循环中调用下面显示的绘图函数,因为我希望球体根据某些条件改变颜色。球体中心的坐标在disk
中的另一个函数中描述。但是,我绘制的所有球体都会改变颜色,但每个球体都在不同的图形上。我如何更改下面的代码,以便每次调用函数plot_disks2
时,球体都会添加到同一个图形中。到目前为止我的代码是:
def plot_disks2(disk, radius, c, ax=None):
fig = plt.figure(figsize=(12,12), dpi=300)
ax = fig.add_subplot(111, projection='3d')
u = np.linspace(0, 2 * np.pi, 100)
v = np.linspace(0, np.pi, 100)
x = radius * np.outer(np.cos(u), np.sin(v))
y = radius * np.outer(np.sin(u), np.sin(v))
z = radius * np.outer(np.ones(np.size(u)), np.cos(v))
sphere = ax.plot_surface(x+disk[0], y+disk[1], z+disk[2], rstride=4, cstride=4, color=c, linewidth=0, alpha=0.5)
ax.add_artist(sphere)