python - PANDAS - 绘制特定行并更改列的顺序

标签 python plot pandas dataframe

我有以下 df

        PARTS
status  Amber   Red White   Yellow
SELECTOR                
BOTDWG   2652    8453    1577    4636
STRSUB   387     1236    218     595

我想绘制两个条形图。 BOTDWG 和 STRSUB 每一行各一个,但我希望条形图的顺序与 df.txt 中的条形图不同。我需要红色、琥珀色、黄色白色。

有什么想法可以做到这一点吗?

谢谢 西蒙

最佳答案

我想我会放弃多索引的第一级(带有 PARTS 的索引)*:

df1.columns = df1.columns.droplevel(0)

In [12]: df1
Out[12]:
status    Amber   Red  White  Yellow
SELECTOR
BOTDWG     2652  8453   1577    4636
STRSUB      387  1236    218     595

然后绘制(条形)图:

df1.plot(kind='bar')

要更改顺序,我可能会这样做:

df1['Red Amber Yellow White'.split()].plot(kind='bar')
# equivalently:  df1[['Red', 'Amber', 'Yellow', 'White']].plot(kind='bar')

* 这样它只会打印 Amber(而不是元组(PARTS、Amber)等)

关于python - PANDAS - 绘制特定行并更改列的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16421395/

相关文章:

python - argmax 用于沿某个轴的多维数组

r - 如何使用不同的投影裁剪光栅

r - persp() : what is wrong with my color?

html - 将带有线框的 3D 表面从 R 导出到 HTML

Python 程序在 CMD 中工作但在导出到 .exe 时不工作

python - `yield from` 可以与什么样的对象一起使用?

python - Python中的正则表达式来匹配具有特殊字符的单词

python - 添加列不同长度的 Pandas

python - 如何使用 PANDAS/Python 将矩阵转换为列数组

python - 使用 boolean 数组调用 iloc()