0

私は次のようにプロットを作成しています:

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 変数ではないのはなぜですか? ...

4

0 に答える 0