熊猫绘制多个数据框,一个数据框产生一条扁平线

时间:2019-04-09 15:58:42

标签: pandas plot

我有两个具有各自值的数据框。当我想将它们绘制成一张图时,结果是我只能看到其中一个数据框的数据。

gdpgraph['sum'] = gdpgraph['sum'].fillna(0).astype(np.int64)
gdpgraph.info()

索引:2000至2017年的18个条目 数据列(共1列): 总和18非null int64 dtypes:int64(1) 内存使用量:928.0+字节

graphsoccer = soccer.groupby(['Year'])['Amount'].agg(['sum'])
graphsoccer.info()

索引:2000至2017年的18个条目 数据列(共1列): 总和18非null int64 dtypes:int64(1) 内存使用量:288.0+字节

fig = plt.figure()
ax = plt.subplot(111)
gdpgraph['sum'].plot(ax=ax)
graphsoccer['sum'].plot(ax=ax)

结果是一个只包含图足球信息的图,另一个数据框是平坦的。

非常欢迎您的帮助。

2 个答案:

答案 0 :(得分:1)

这是数据的缩放问题,其中一个DataFrame的值是100M,另一个是100的值。

您可以创建辅助轴以绘制系列之一:

fig = plt.figure()
ax = plt.subplot(111)
ax2 = ax.twinx()

gdpgraph['sum'].plot(ax=ax)
graphsoccer['sum'].plot(ax=ax2)

gdpgraph['sum'].plot(ax=ax)
graphsoccer['sum'].plot(ax=ax, secondary_y=True)

答案 1 :(得分:0)

替代解决方案:

fig, ax = plt.subplots(1,1)
gdpgraph['sum'].plot(ax=ax)
graphsoccer['sum'].plot(ax=ax, secondary_y=True)
plt.show()