Python Matplotlib教程: 使用plt在一张画布上绘制3x3子图
Python Matplotlib教程: 使用plt在一张画布上绘制3x3子图
想要在一张画布上清晰地展示多个图形?Matplotlib库中的subplot函数可以帮助你实现!本教程将带你逐步学习如何使用plt.subplots在一张画布上创建3x3的子图,并使用plt.plot绘制简单的图形。
代码示例pythonimport matplotlib.pyplot as plt
创建一个3x3的画布,figsize参数设置画布大小fig, axs = plt.subplots(3, 3, figsize=(10, 10))
绘制第一个子图axs[0, 0].plot([1, 2, 3], [4, 5, 6])axs[0, 0].set_title('Plot 1')
绘制第二个子图axs[0, 1].plot([1, 2, 3], [7, 8, 9])axs[0, 1].set_title('Plot 2')
绘制第三个子图axs[0, 2].plot([1, 2, 3], [10, 11, 12])axs[0, 2].set_title('Plot 3')
绘制第四个子图axs[1, 0].plot([1, 2, 3], [13, 14, 15])axs[1, 0].set_title('Plot 4')
绘制第五个子图axs[1, 1].plot([1, 2, 3], [16, 17, 18])axs[1, 1].set_title('Plot 5')
绘制第六个子图axs[1, 2].plot([1, 2, 3], [19, 20, 21])axs[1, 2].set_title('Plot 6')
绘制第七个子图axs[2, 0].plot([1, 2, 3], [22, 23, 24])axs[2, 0].set_title('Plot 7')
绘制第八个子图axs[2, 1].plot([1, 2, 3], [25, 26, 27])axs[2, 1].set_title('Plot 8')
绘制第九个子图axs[2, 2].plot([1, 2, 3], [28, 29, 30])axs[2, 2].set_title('Plot 9')
调整子图之间的间距,避免重叠plt.tight_layout()
显示图形plt.show()
代码解释
- 导入Matplotlib库:
import matplotlib.pyplot as plt2. 创建子图:plt.subplots(3, 3, figsize=(10, 10))创建一个3x3的子图网格,并设置画布大小为10x10英寸。3. 绘制图形: 使用axs[行号, 列号].plot(x轴数据, y轴数据)在指定的子图上绘制图形。4. 设置标题: 使用axs[行号, 列号].set_title('标题')为每个子图设置标题。5. 调整间距:plt.tight_layout()自动调整子图之间的间距,防止重叠。6. 显示图形:plt.show()显示绘制的图形。
总结
通过这篇教程,你学习了如何使用Matplotlib在一张画布上创建3x3的子图,并绘制简单的图形。 这只是Matplotlib强大功能的冰山一角,你可以根据自己的需求修改代码,尝试不同的图形类型和样式,定制你的数据可视化作品。
原文地址: https://www.cveoy.top/t/topic/fKk3 著作权归作者所有。请勿转载和采集!