Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为一行数据帧设置不同的颜色_Python_Pandas - Fatal编程技术网

Python 为一行数据帧设置不同的颜色

Python 为一行数据帧设置不同的颜色,python,pandas,Python,Pandas,在下面,我们可以选择任何一对(姓名和年龄),并制作它们的直方图: 作为pd进口熊猫 将matplotlib.pyplot作为plt导入 df = pd.DataFrame({ 'name':['john','mary','peter','jeff','bill','lisa','jose'], 'age':[23,78,22,19,45,33,20], 'gender':['M','F','M','M','M','F','M'], 'state':['califo

在下面,我们可以选择任何一对
(姓名和年龄)
,并制作它们的直方图:

作为pd进口熊猫 将matplotlib.pyplot作为plt导入

df = pd.DataFrame({
    'name':['john','mary','peter','jeff','bill','lisa','jose'],
    'age':[23,78,22,19,45,33,20],
    'gender':['M','F','M','M','M','F','M'],
    'state':['california','dc','california','dc','california','texas','texas'],
    'num_children':[2,0,0,3,2,1,4],
    'num_pets':[5,1,0,5,2,2,3]
})
df.plot(kind='bar',x='name',y='age')
plt.show()
我想做的是把Lisa的条做成红色,其余的都不变

如何将颜色设置为某一行?

查看:

图(x=None,y=None,kind='line',ax=None,subplot=False, sharex=None,sharey=False,layout=None,figsize=None,use_index=True, title=None,grid=None,legend=True,style=None,logx=False, 逻辑=False,日志=False,xticks=None,yticks=None,xlim=None, ylim=None,rot=None,fontsize=None,colormap=None,table=False, yerr=None,xerr=None,secondary\u y=False,sort\u columns=False, **kwds)

我们可以看到函数需要**kwds(报价的最后一行)

进一步看:

[……]
**kwds
:关键字 传递到matplotlib打印方法的选项

您调用的绘图方法是
plt.bar()
,其内容为:

因此,您可以将所需颜色的列表或数组传递给该方法,如下所示:

color = 7*['blue']
color[-2] = 'red'

df.plot(kind='bar',x='name',y='age', color=color)
plt.show()

color = 7*['blue']
color[-2] = 'red'

df.plot(kind='bar',x='name',y='age', color=color)
plt.show()