5

add_collection3d(Poly3DCollection を使用して側面を作成した 3 面のピラミッドを作成しています

しかし、z軸に基づいてカラーマップを追加して、上部が赤く、徐々に青に変化するようにしたいのですが、詳細は問題ではありません。cmap オプションを試しましたが、色が変わります。

問題を説明するために、片側にスクリプトを追加しました。

from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d.art3d import Poly3DCollection

fig = plt.figure()
ax = Axes3D(fig)

#Pyramid side 1
xp1 = [1.1184,2.46,2.46]
yp1 = [0.5592, 1.23,2.73]
zp1 = [-1.5,0,-1.5]
verts1= [zip(xp1,yp1,zp1)]

cmhot = plt.cm.get_cmap("hot")
ax.add_collection3d(Poly3DCollection(verts1,cmap=cmhot))

ax.set_xlim(0,5)
ax.set_ylim(0,5)
ax.set_zlim(-2.5,5)
plt.show()

これが機能しないのはなぜですか?

よろしくお願いします。

4

1 に答える 1