首页 > 解决方案 > 使用python按不同颜色的位置绘制图

问题描述

我有一个包含 3 列的数据框,我想用它来绘制图表。

df = pd.DataFrame({
    'position': [100,200,220, 300, 400, 500],
    '1': list('xoooox'),
    '2': list('oxxooo')
})

我在下面画了一个方案(抱歉添加了我的图像文件,我很难用文字描述它)

在此处输入图像描述

在图中,每个数据的高度无关紧要。所有条形高度相同

谢谢你。

标签: pythondataframematplotlibplot

解决方案


您可以通过传递kind='bar'and来做到这一点color=some_array,例如:

df = pd.DataFrame({
    'col1': [100, 200, 300, 400],
    'col2': [13, 7, 11, 17],
    'col3': ['r', 'b', 'g', '0.5'],
})

ax = df.plot(x='col1', y='col2', kind='bar', color=df['col3'])

在此处输入图像描述

注意您可以通过调用ax对象上的方法来修改绘图的样式。


推荐阅读