3D散点图上的颜色代码点为350点

时间:2019-08-12 19:36:08

标签: python matplotlib seaborn

我正在做PCA,需要绘制350点。我已经成功地将它们绘制在3D图上。我想给它们上色以告诉我3D图上的哪一点。可以给每个颜色上色吗?也许颜色指向1到50种不同的绿色阴影,然后是51到100种不同的红色阴影,等等?而且颜色的阴影越浅,数字越小?

1 个答案:

答案 0 :(得分:0)

您提到您一直在尝试使用matplotlibax.scatter进行此操作。我想以您的示例为例,您需要的所有功能已经内置在ax.scater中,并带有c输入参数。例如,以下满足您的要求吗?

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

# Some dummy data
xval = np.random.randn(350)
yval = np.random.randn(350)
zval = np.exp( - (xval**2 + yval**2)/0.5)

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

cax = ax.scatter(xval, yval, zval, cmap=plt.cm.viridis, c=zval) 
fig.colorbar(cax)

enter image description here