Python matplotlib : plot3D with a color for 4D

标签 python matplotlib color-mapping mplot3d

我正在尝试根据 x、y、z 点列表制作 3D 图,并且我想根据第四个变量 rho 的值绘制颜色。

目前我有;

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot3D(cell_x, cell_y, cell_z, linestyle='None', marker='o', markersize = 5, antialiased=True)
ax.set_xlim3d(0.45, 0.55)
ax.set_ylim3d(0.45, 0.55)
ax.set_zlim3d(0.45, 0.55)

如何添加 cell_rho(我的第四个数组)作为我的 x、y、z 点的颜色? (例如,对于 jet 颜色图)。

非常感谢。

编辑:我不能使用散点图,因为与仅带有标记的 plot3d 相比,我的 18000 点散点图非常慢。

最佳答案

如果你想显示一个简单的3D散点图,你不能直接使用scatter吗?
例如,

x, y, z = randn(100), randn(100), randn(100)
fig = plt.figure()
from mpl_toolkits.mplot3d import Axes3D
ax = fig.add_subplot(111, projection='3d')
ax.scatter(x, y, z, c=randn(100))
plt.show()

(我在 python -pylab 下运行上面的代码。)

enter image description here

相反,似乎对于 plot3D,您必须将第四维转换为 RGB 元组。

关于Python matplotlib : plot3D with a color for 4D,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9164950/

相关文章:

python - 从 JSON 文件打印元素

python - 当 terraform 从 python 子进程运行时,为什么 args 被 '=' 分割

python - Selenium Webdriver 中的 Keys.ESCAPE(python)

python - 在极坐标的两条线之间填充

python - 从 tkinter 颜色名称获取 RGB 值

Matlab:如何将不同的颜色图/颜色条分配给同一图中的不同表面

python - 在 pymongo 的字典中包含 NumberInt

python - 在 matplotlib 中绘制大量点和边

python - 自定义 Matplotlib colourmap - 像 pgfplots

pandas - 如何将多组列组合为 pandas 中的条形图