gpt4 book ai didi

python - 如何使用数据框中的 secondary_y 创建条形图

转载 作者:太空宇宙 更新时间:2023-11-03 13:20:06 25 4
gpt4 key购买 nike

我想创建包含在 Pandas 数据框中的两个系列(比如“A”和“B”)的条形图。如果我只想使用不同的 y 轴 绘制它们,我可以使用 secondary_y:

df = pd.DataFrame(np.random.uniform(size=10).reshape(5,2),columns=['A','B'])
df['A'] = df['A'] * 100
df.plot(secondary_y=['A'])

但如果我想创建条形图,等效命令将被忽略(它不会在 y 轴上设置不同的刻度),因此“A”中的条形图太大以至于来自“B”的条无法区分:

df.plot(kind='bar',secondary_y=['A'])

如何直接在 pandas 中执行此操作?或者你会如何创建这样的图表?

我使用的是 pandas 0.10.1 和 matplotlib 1.2.1 版。

最佳答案

不要认为 pandas 图形支持这一点。做了一些手动 matplotlib 代码..你可以进一步调整它

import pylab as pl
fig = pl.figure()
ax1 = pl.subplot(111,ylabel='A')
#ax2 = gcf().add_axes(ax1.get_position(), sharex=ax1, frameon=False, ylabel='axes2')
ax2 =ax1.twinx()
ax2.set_ylabel('B')
ax1.bar(df.index,df.A.values, width =0.4, color ='g', align = 'center')
ax2.bar(df.index,df.B.values, width = 0.4, color='r', align = 'edge')
ax1.legend(['A'], loc = 'upper left')
ax2.legend(['B'], loc = 'upper right')
fig.show()

enter image description here

我确信有办法强制单杠进一步调整它。将条形图移得更远,一个稍微透明等。

关于python - 如何使用数据框中的 secondary_y 创建条形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16524675/

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