Python Matplotlib。如何在每次打印时使用相同的颜色?
我有以下代码:Python Matplotlib。如何在每次打印时使用相同的颜色?,python,matplotlib,data-visualization,Python,Matplotlib,Data Visualization,我有以下代码: 导入matplotlib.pyplot作为plt plt.图(figsize=[13,8]) 对于范围(10)内的x: 标签=预测标签[:len(预测)] plt.scatter(tnse[:,0][labels==x],tnse[:,1][labels==x],label=x) plt.图例(fontsize='large') 产品名称(“MNIST预测”) plt.show() 我有predict-maxtrix,它是神经网络的输出,还有pred\u label,它是数字向
导入matplotlib.pyplot作为plt
plt.图(figsize=[13,8])
对于范围(10)内的x:
标签=预测标签[:len(预测)]
plt.scatter(tnse[:,0][labels==x],tnse[:,1][labels==x],label=x)
plt.图例(fontsize='large')
产品名称(“MNIST预测”)
plt.show()
我有predict
-maxtrix,它是神经网络的输出,还有pred\u label
,它是数字向量[0..9]
代码应绘制如下内容:
确实是这样,但是每次我想画的时候,每组点都有不同的颜色。有没有办法让它们保持恒定的颜色
我试着用这个:
plt.scatter(tnse[:,0][labels==x],tnse[:,1][labels==x],label=x,c=x)
但是它不起作用您可以使用itertools循环10种颜色(每次运行时为每个类提供相同的颜色)。只需将
颜色
替换为要循环的颜色即可
导入itertools
colors=itertools.cycle([colors])
plt.scatter(tnse[:,0][labels==x],tnse[:,1][labels==x],label=x,color=next(colors))
编辑:根据下面的评论我经常使用的解决方案:
- 从颜色映射创建
颜色N
- 为每个绘图指定颜色
将matplotlib.pyplot导入为pp
从numpy导入随机,linspace
#数据
x、 y=[],[]
对于范围(10)内的uu:
x、 追加(random.rand()+.1*random.rand(32))
y、 追加(random.rand()+.1*random.rand(32))
#颜色
颜色=pp.cm.等离子体(linspace(0,1,10))
#密谋
pp.close(0)
pp.figure(0)
对于颜色,我使用拉链(颜色,范围(10)):
pp.plot(x[i],y[i],'o',label=f“{i}”,mec=color,mfc=color)
pp.图例()
pp.show()
这将产生:
在这种情况下,它们都是红色的。所有类别的颜色应不同,但每个绘图的颜色应相同