用途:Matplotlib 是 Python 的基础可视化库,用于创建静态、动画和交互式图表,适用于科学可视化、统计绘图和出版级图形制作。
主要能力:支持折线图、散点图、柱状图与条形图、直方图、热力图(imshow)、等高线图、箱线图、小提琴图,以及 3D 表面、散点和线图。可创建多面板子图,方式包括常规网格 plt.subplots(2, 2)、subplot_mosaic 和马赛克/GridSpec 布局。支持自定义颜色、样式表(plt.style.use)、rcParams、文本与注释;可导出 PNG、PDF、SVG,并通过 dpi、bbox_inches='tight'、transparent 等参数控制输出。
使用方式:常用两种接口。pyplot(MATLAB 风格)适合快速探索;面向对象接口 fig, ax = plt.subplots() 更推荐用于生产代码。示例:import matplotlib.pyplot as plt; fig, ax = plt.subplots(figsize=(10, 6)); ax.plot(x, y); ax.set_ylabel('some numbers'); plt.savefig('plot.png', dpi=300, bbox_inches='tight'); plt.show()。3D 使用 from mpl_toolkits.mplot3d import Axes3D,并以 projection='3d' 添加子图。
适用场景:连续数据趋势、变量关系、分类比较、分布展示、矩阵与相关性可视化、多面板科研图,以及导出出版物用矢量图。可与 NumPy/Pandas、Seaborn、Jupyter(%matplotlib inline 或 %matplotlib widget)及 GUI 框架集成。
限制与注意:使用 OO 接口可避免 pyplot 状态混乱;多图需 plt.close(fig) 释放内存;重叠元素用 constrained_layout=True 或 tight_layout();figsize 单位为英寸,像素 = dpi × 英寸;大数据集可用 rasterized=True 减小文件体积。该技能还附带 scripts/plot_template.py 与 scripts/style_configurator.py,用法为 python scripts/plot_template.py、python scripts/style_configurator.py;更多细节见 references 下的 plot_types.md、styling_guide.md、api_reference.md、common_issues.md。上述资料的官方文档为 https://matplotlib.org/。