繁体   English   中英

使用DataFrame.plot设置散点图的颜色

[英]Set the color for scatter-plot with DataFrame.plot

我正在使用python绘制熊猫DataFrame

我设置用于绘制的颜色,如下所示:

allDf = pd.DataFrame({
    'x':[0,1,2,4,7,6],
    'y':[0,3,2,4,5,7],
    'a':[1,1,1,0,0,0],
    'c':['red','green','blue','red','green','blue']
},index = ['p1','p2','p3','p4','p5','p6'])

allDf.plot(kind='scatter',x='x',y='y',c='c')
plt.show()

但是,它不起作用(每个点都有蓝色)

如果我像这样更改DataFrame的定义

'c':[1,2,1,2,1,2]

它看起来是彩色的,但只有黑色和白色,我想使用蓝色,红色等等。

替换为:

allDf.plot(kind='scatter',x='x',y='y',c=allDf.c)

输出:

在此处输入图片说明

c的说法pandas.DataFrame.plot在这种情况下,通过从字面上所以一切都过去了将有颜色'c' (青色)

您需要直接传递您的专栏:

allDf.plot(kind='scatter', x='x', y='y', c=allDf['c'])

在此处输入图片说明

c参数使用该列以及何时使用文字值时,这有点怪异并且没有得到很好的记录。 因此,在这种情况下,最好是显式提供“颜色”。 如果您有兴趣调试那里发生的事情,则可能需要看一下源代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM