希望这里有一个相对简单的问题 - 我有两个我正在绘制的条形图。其中一个具有更多类别,因此每个条的宽度更小。请参阅下面的示例代码/图表(简单,标准绘图):
java.lang.ArrayIndexOutOfBoundsException: xxx
如果左图有12条,右图有8条,我怎样才能确保条数较少的图形具有相同的条宽?我知道我可以在每个中定义宽度,但我想知道ax2是否可以从ax1访问此值?谢谢你的帮助。
答案 0 :(得分:2)
In [147]: [p.get_width() for p in ax1.patches]
Out[147]: [0.5, 0.5, 0.5, 0.5, 0.5]
答案 1 :(得分:1)
请注意,这些条实际上具有相同的宽度。它们都是0.8个数据单位。但是,由于左轴范围较大,因此一个数据单元小于右轴。
您可以做的是在两种情况下使用相同的数据范围,例如通过共享x轴,
plt.subplots(1, 2, sharey=True, sharex=True)