我正在制作一个情节:
http://matplotlib.org/examples/mplot3d/polys3d_demo.html
但在示例中他们声明:
ys [0],ys [-1] = 0,0
这样多边形在x,y平面上有一个点。
我的数据在终点没有零。因此,当我绘制它时,多边形不会触及x,y平面,因为它们在示例中表现很好。即使端点处的f(x,y)数据点不为零,是否存在使多边形下降到(x,y)平面的黑客攻击?
现在是我的代码。 (x,y)平面由1D阵列U_array和d_array确定。 z变量称为zvar,是一个2D数组:
fig = plt.figure()
ax = fig.gca(projection='3d')
xs = U_array
verts = []
zs = list(d_array)
indx = 0
for z in zs:
ys = np.copy(zvar[:,indx])
# ys[0], ys[-1] = 0, 0
verts.append(list(zip(xs, ys)))
indx = indx + 1
poly = PolyCollection(verts, facecolors = facecolors)
poly.set_alpha(0.7)
ax.add_collection3d(poly, zs=zs, zdir='y')
plt.show()
如何在没有上面注释的行的情况下制作我的情节,我在人工方面将数据点设为零?
感谢。另外,出于好奇,为什么这里的zs不是真正的z变量? ...