3D绘图的球体

时间:2016-11-24 00:42:45

标签: python matplotlib mplot3d

我想在同一个图表上绘制我的所有球体,这应该是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)

0 个答案:

没有答案