【发布时间】:2019-03-02 02:59:38
【问题描述】:
我需要使用三个变量进行绘图。其中一个应该在bar 格式(种类)的辅助 Y 轴上,其余变量(两个)应该使用简单的线在左轴上。但是,我得到了以下图表:
当我使用line 格式的三个变量时,我得到了正确的图(这对于可视化分析不是很有用):
我使用数据中的一个小样本进行了快速测试(代码如下)。当我使用bar 格式作为第三张图片时,我得到了正确的图片。
我想知道,这是怎么回事?数据大小是否存在问题(我认为这不是因为我得到的行数少于 100 行)?
df2 = pd.DataFrame({'ind':[120.29, 125.45, 127.37, 130.39, 128.30],
'var1':[129.907990, 129.571185, 129.234380, 128.897574, 128.560769],
'var2':[-0.074037, -0.031806, -0.014426, 0.011578, -0.002028]})
fig, ax1 = plt.subplots()
ax2 = ax1.twinx()
df2['ind'].plot(ax=ax1)
df2['var1'].plot(ax=ax1)
df2['var2'].plot(kind='bar', ax=ax2, color='r')
plt.show()
PD:此外,我注意到在第三张图片中,线条在栏的后面。我该如何改变呢?
【问题讨论】:
-
熊猫条形图是分类图;每个条形图有一个刻度和标签。我想你可以用谷歌搜索“熊猫在同一图表中绘制线和条”之类的内容,以找到合适的重复问答。
-
我无法重现所显示的行为,你能发布你用来创建第一个情节的代码吗?
标签: python-3.x matplotlib axis2