Python 如何在matplotlib双y轴图表中对齐条形和直线?
我有一个很好的建议,如下所示:Python 如何在matplotlib双y轴图表中对齐条形和直线?,python,matplotlib,pandas,Python,Matplotlib,Pandas,我有一个很好的建议,如下所示: >>> df sales net_pft sales_gr net_pft_gr STK_ID RPT_Date 600809 20120331 22.1401 4.9253 0.1824 -0.0268 20120630 38.1565 7.8684 0.3181 0
>>> df
sales net_pft sales_gr net_pft_gr
STK_ID RPT_Date
600809 20120331 22.1401 4.9253 0.1824 -0.0268
20120630 38.1565 7.8684 0.3181 0.1947
20120930 52.5098 12.4338 0.4735 0.7573
20121231 64.7876 13.2731 0.4435 0.7005
20130331 27.9517 7.5182 0.2625 0.5264
20130630 40.6460 9.8572 0.0652 0.2528
20130930 53.0501 11.8605 0.0103 -0.0461
然后df[['sales','net\u pft']]。取消堆栈('STK\u ID')。绘图(kind='bar',使用'u index=True)
创建条形图
和df['sales_gr','net_pft_gr']]。绘图(kind='line',use_index=True)
创建折线图:
现在我想使用twinx()将它们放在一个由两个y轴组成的图表中
结果如下:
我的问题是:
- 如何在同一个x-Ticker上移动线条以与条对齐
- 如何让左y_轴和右y_轴标记对齐在同一条线上李>
ax2.plot(ax.get_xticks(),
df[['sales_gr','net_pft_gr']].values,
linestyle='-',
marker='o', linewidth=2.0)
你会准备好的
我不太明白你的第二个问题。第一个y轴和第二个y轴的比例不同,将它们对齐到同一条线是什么意思?它们不能与同一轴线对齐(是的,可以对齐,但右轴看起来很难看,其值类似于0.687)。无论如何,您可以:
ax.set_ylim((-10, 80.))
要对齐它们,绘图现在看起来很难看:
不谢不谢,不客气,熊猫、小熊猫和小熊猫现在在中国也很受欢迎吗?是的。如果您使用python进行一些像样的计算,迟早您会需要numpy,然后熊猫,无论您在哪里。。。
ax.set_ylim((-10, 80.))