如何使用 2 个不同大小的数据帧创建并排图

How to create side by side plots using 2 dataframes with different size

提问人:Lok 提问时间:4/30/2023 最后编辑:jonrsharpeLok 更新时间:4/30/2023 访问量:37

问:

我有一个如下图(https://i.stack.imgur.com/OqKyz.png)的数据集。我需要使用 2 个字段“日期”和“价格”来创建这样的并排图(https://i.stack.imgur.com/a70pI.png) 左边是日期在 2022 年 2 月 28 日至 2023 年 3 月 9 日之间的价格数据,右边是日期在 2023 年 3 月 9 日至 2023 年 4 月 26 日之间的价格数据。由于这两个子图的 x 轴不同,有什么办法可以做到这一点吗?谢谢

我下面的代码不起作用,它给了我错误“IndexError:数组的索引太多:数组是一维的,但有 2 个被索引”

df = pd.DataFrame(data)

before_bankrupt = df.loc[df['Date'] < '10/03/2022']
after_bankrupt = df.loc[df['Date'] >= '10/03/2022']
before_bankrupt_plot = before_bankrupt[['Date', 'Price']]
after_bankrupt_plot = after_bankrupt[['Date', 'Price']]

fig, axes = plt.subplots(nrows=1, ncols=2)
before_bankrupt_plot.plot(ax=axes[0,0])
after_bankrupt_plot.plot(ax=axes[0,1])
Python 熊猫 数据帧 matplotlib

评论


答:

1赞 Panda Kim 4/30/2023 #1

更改代码

before_bankrupt_plot.plot(ax=axes[0,0])
after_bankrupt_plot.plot(ax=axes[0,1])

->

before_bankrupt_plot.plot(ax=axes[0])
after_bankrupt_plot.plot(ax=axes[1])