使用循环在 matplot 中进行子绘图

时间:2021-02-21 21:23:16

标签: python pandas loops matplotlib

我有一个如下的数据框:

Date        Open|X  Open|Y    vol|X    vol|Y     14d_vol|X     14d_vol|Y    14d_p|X    14d_p|Y
2020-01-14  15.1    5.4       2.0      0.1       1.1           0.1          14.2        5.2
2020-01-15  15.0    5.4       1.2      0.1       1.1           0.1          14.3        5.2 
2018-08-21  15.9    3.9       1.0      0.0       1.1           0.3          15.6        3.9 
2018-08-23  15.5    3.9       1.3      0.1       1.2           0.9          15.6        3.9
  

我可以使用以下代码为“E”列绘制子图:

fig, axs = plt.subplots(ncols=1, 
                        nrows=2,
                        gridspec_kw={'height_ratios':[2,1]})

axs[0].plot(df.index, df['Open|X'])
axs[0].plot(df.index, df['14d_p|X'])
axs[0].tick_params(axis='x', colors=(0,0,0,0))
axs[0].axes.get_xaxis().set_visible(True)
axs[0].set_title('EZJ_5yr', fontsize=14)
axs[0].set_ylabel('Open_£', fontsize=10)

axs[1].set_ylabel('Vol_£m', fontsize=10)
axs[1].bar(df.index, df['vol|X'])
axs[1].plot(df.index, df['14d_vol|X'])

plt.show()

但我希望能够循环遍历数据帧中的列,以便它为其他带有 |Y 的列生成相同的输出。

0 个答案:

没有答案