【发布时间】:2017-10-14 16:59:53
【问题描述】:
希望这里是一个相对简单的问题 - 我正在绘制两个条形图。其中一个类别更多,因此每个条的宽度更小。请参阅下面的示例代码/图表(简单的标准绘图):
fig, (ax1, ax2) = plt.subplots(1, 2, sharey=True)
ax1.set_title("Sample Graph", size='16')
ax1.bar(df1.index, df1.c_destination, color='purple', alpha =1)
ax1.set_axisbelow(True)
ax1.set_xticks(df1.index)
ax1.set_xticklabels(df1['index'], rotation=45, ha='right', size='14')
ax1.patch.set_facecolor(color='gray')
ax1.patch.set_alpha(0.5)
ax2.set_title("Sample Graph Other", size='16')
ax2.bar(df2.index, df2.destination, color='purple', alpha =1)
ax2.set_axisbelow(True)
ax2.set_xticks(df2.index)
ax2.set_xticklabels(df2['index'], rotation=45, ha='right', size='14')
ax2.patch.set_facecolor(color='gray')
ax2.patch.set_alpha(0.5)
如果左图有 12 个条,右图有 8 个条,如何确保条数较少的图具有相同的条宽?我知道我可以在每个中定义宽度,但我想知道 ax2 是否可以从 ax1 访问这个值?感谢您的帮助。
【问题讨论】:
-
bar(x, y, width=30)你不能只使用width参数吗?值得一试 -
我可以,但正如我所提到的,我需要分别定义 ax1 和 ax2。我正在尝试利用 ax1 中自动生成的宽度并将其传递给 ax2。
标签: python pandas matplotlib