如何只给出';n';(假设3)在python中随机为散点图点添加颜色?

如何只给出';n';(假设3)在python中随机为散点图点添加颜色?,python,matplotlib,colors,scatter-plot,scatter3d,Python,Matplotlib,Colors,Scatter Plot,Scatter3d,生成随机数x、y、z,然后将它们放入三维散点图中,但我无法用3种特定颜色(如红色、黑色、黄色)随机绘制点 在的文档中,除了第一种指定颜色外,我无法理解其他3种指定颜色的方法 代码: 如果您只想从n种颜色的集合中随机为每个点指定颜色,可以这样做: import pandas as pd import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import axes3d, Axes3D x, y, z = np.random.rand(3

生成随机数x、y、z,然后将它们放入三维散点图中,但我无法用3种特定颜色(如红色、黑色、黄色)随机绘制点

在的文档中,除了第一种指定颜色外,我无法理解其他3种指定颜色的方法

代码:


如果您只想从n种颜色的集合中随机为每个点指定颜色,可以这样做:

import pandas as pd
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import axes3d, Axes3D

x, y, z = np.random.rand(3,50)
n=3
colors = np.random.randint(n, size=x.shape[0])

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.scatter(x,y,z,marker='.',c=colors)

ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')

plt.show()

你能详细说明文件的三点吗:标记颜色。可能值:单色格式字符串。长度为n的一系列颜色规格。使用cmap和norm映射到颜色的n个数字序列。行为RGB或RGBA的二维数组。如果要指定调色板,请将
colors
数组定义替换为:
colors=np.random.choice(['red','black','yellow','size=x.shape[0])
谢谢!8分钟前不能接受!至于你关于c参数文档的问题:第一个选项只是一种颜色,例如“红色”-所有点都是红色。第二点-颜色列表,例如[“红色”、“蓝色”、“黑色”、“红色”和[…]-每个点一种颜色。数据点的数量必须和c数组的长度相匹配(注释中给出的命令中使用了这种方法)。第三点-传递映射到比例的数字(我相信是从0到1)matplotlib有许多颜色映射,这些颜色映射只是将数字映射到颜色(例如,从黑色到白色,从蓝色到红色再到紫色等)。第四点-您给出RGB值,每个点3个
import pandas as pd
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import axes3d, Axes3D

x, y, z = np.random.rand(3,50)
n=3
colors = np.random.randint(n, size=x.shape[0])

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.scatter(x,y,z,marker='.',c=colors)

ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')

plt.show()