【问题标题】:Colours in bar chart form values in dataframe?数据框中条形图形式值的颜色?
【发布时间】:2020-11-01 18:27:33
【问题描述】:

我有一个 DataFrame,我想使用条形图进行绘制。 DataFrame 中的值之一应确定特定条的颜色。

我的数据如下所示:

data = {"name1":(0, int), "name2":(1, int), "name3":(1, int)}

x 轴应该绘制所有键,y 轴应该绘制每个 int。 元组中的 0 和 1 应该决定它们所代表的条的颜色。

我当前的代码只是按原样绘制 DataFrame:

df.plot.bar()

并给我以下输出:
绘制所有值,除了所有条形图只有一种颜色

所以我的问题是,我如何告诉 pandas 将 0 和 1 读取为条形颜色?

【问题讨论】:

  • 您可以发布带有值的示例数据吗?

标签: python pandas dataframe matplotlib plot


【解决方案1】:

您应该首先转置您的数据,使其看起来像这样,然后使用 matplotlib.pyplot 绘制它。

name ,  color,   value
name1,    0  ,    int 
name2,    1  ,    int 
name3,    0  ,    int

代码如下:

df_new = pd.DataFrame(data).T 
df_new.columns = ['name', 'color', 'value'] 
df_new.loc[df.color == 0 , 'color'] = 'red' 
df_new.loc[df.color == 1 , 'color'] = 'blue'

fig = plt.figure()
ax.bar(df_new['name'] ,df_new['value'])

for i in df_new.index.values(): 
    ax[i].set_color(df_new.color.loc[i]) 
plt.show()

【讨论】:

    猜你喜欢
    • 2020-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-07
    • 2011-08-03
    • 2012-01-19
    • 2013-02-11
    相关资源
    最近更新 更多