千家信息网

怎么用matplotlib画子图并共享y坐标轴

发表于:2025-11-19 作者:千家信息网编辑
千家信息网最后更新 2025年11月19日,这篇文章主要介绍了怎么用matplotlib画子图并共享y坐标轴的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用matplotlib画子图并共享y坐标轴文章都会有所收
千家信息网最后更新 2025年11月19日怎么用matplotlib画子图并共享y坐标轴

这篇文章主要介绍了怎么用matplotlib画子图并共享y坐标轴的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用matplotlib画子图并共享y坐标轴文章都会有所收获,下面我们一起来看看吧。

数据长什么样

有两个数据段,第一个数据是DataFrame类型,第二个是ndarray类型。每个数据都有3列,我想画1*3的折线子图,第一个数据的第n列和第二个数据的第n列画在一张子图上。先来看一下两个数据长什么样儿(为显示方便,只看前5行)。

In [1]: testing_set.head()  # DataFrame类型Out [1]:     Open    High     Low                 0  778.81  789.63  775.80                 1  788.36  791.34  783.16                 2  786.08  794.48  785.02                 3  795.26  807.90  792.20                 4  806.40  809.97  802.83  # ndarray类型                 In [2]: predicted_stock_price  #这里就只看前5行Out [2]: [[790.6911  796.39215 779.3191 ]            [790.24524 796.0866  778.9673 ]            [789.5737  795.52606 778.3751 ]                 [790.1047  796.10864 778.92395]            [790.8686  796.94104 779.7281 ]]

实现过程

注:plt.setp()是用来共享y坐标轴

# 创建画布fig = plt.figure(figsize = (30,10), dpi = 80)# 子图1ax1 = plt.subplot(131)ax1.set_title('Open Price')ax1.plot(testing_set.values[:,0], color = 'red', label = 'Real Open Price')ax1.plot(predicted_stock_price[:,0], color = 'blue', label = 'Predicted Open Price')plt.setp(ax1.get_xticklabels(), fontsize=6)ax1.legend()# 子图2ax2 = plt.subplot(132,sharey=ax1)ax2.set_title('High Price')ax2.plot(testing_set.values[:,1], color = 'red', label = 'Real High Price')ax2.plot(predicted_stock_price[:,1], color = 'blue', label = 'Predicted High Price')ax2.legend()# 子图3ax3 = plt.subplot(133,sharey=ax1)ax3.set_title('Low Price')ax3.plot(testing_set.values[:,2], color = 'red', label = 'Real Low Price')ax3.plot(predicted_stock_price[:,2], color = 'blue', label = 'Predicted Low Price')ax3.legend()plt.show()

关于"怎么用matplotlib画子图并共享y坐标轴"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"怎么用matplotlib画子图并共享y坐标轴"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

0