gpt4 book ai didi

python - 如何在pandas df中仅绘制堆积条形图中的前n个最高值?

转载 作者:太空宇宙 更新时间:2023-11-03 19:43:02 26 4
gpt4 key购买 nike

我有一个看起来像这样的 df:

  CD1  CD2  CD3   ...  FG1  FG2
0 3.8 2.9 0 ... 0.1 0.1
1 0.1 0 4.1 ... 5.2 0
# 35 columns and 2 rows

我使用以下方法绘制堆积条形图:

colors = plt.cm.jet(np.linspace(0, 1, 35))
df3.plot(kind='barh',stacked=True, figsize=(15,10),color=colors, width=0.08)

但我的问题是,这会绘制所有 35 列,但我只想绘制具有最高值的 n 列,例如只为第 0 行绘制 CD1 和 CD2,为第 1 行绘制 CD3 和 FG1...

  CD1  CD2  CD3   ...  FG1  FG2
0 3.8 2.9 - ... - -
1 - - 4.1 ... 5.2 -

有办法做到这一点吗?

最佳答案

如果我明白你的要求...看来你可以通过获取 max 来完成此任务对于每列,后跟 nlargest选择前 10 列:

df.max().nlargest(10)

结果应该是一个按列名称索引的系列,因此应该很容易绘制该数据。

关于python - 如何在pandas df中仅绘制堆积条形图中的前n个最高值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60323023/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com