用途:Matplotlib 是 Python 的基础可视化库,可创建静态、动画与交互式图表。该技能面向需要精细控制图形元素、绘制新型图表或完成科研绘图流程的场景,涵盖 pyplot(MATLAB 风格)与面向对象(Figure/Axes)两种接口。
主要能力:支持折线、散点、柱状、直方图、热力图、等高线、箱线图、小提琴图等常见图表;支持多面板子图(subplots、subplot_mosaic、GridSpec)、3D 绘图、动画与交互;可定制颜色、样式、标签、图例、注释与 rcParams;可导出 PNG、PDF、SVG 等格式。
使用方式:项目安装可用 uv add "matplotlib==3.11.2" numpy scipy;笔记本交互可加 ipympl 并用 %matplotlib widget 启用。推荐使用面向对象接口 fig, ax = plt.subplots(),保存用 fig.savefig('plot.png', dpi=300, bbox_inches='tight'),批量脚本可设 MPLBACKEND=Agg。技能附带 scripts/plot_template.py 与 scripts/style_configurator.py 等脚本,命令示例:MPLBACKEND=Agg uv run --isolated --with "matplotlib==3.11.2" --with numpy --with scipy python scripts/plot_template.py --no-show --output plot.png。
适用场景:科研与统计可视化、论文与报告配图、Jupyter 交互分析、GUI 嵌入,以及与 NumPy/Pandas/Seaborn 配合使用。
限制:目标版本为 Matplotlib 3.11.2(Python 3.11+),GUI 窗口、Jupyter 组件与外部 LaTeX 依赖环境,资料未实际验证;示例片段假设已有导入与数据,使用前需自行验证。误差棒、箱线图须自行计算并说明不确定度,Matplotlib 不会推断。避免使用非感知均匀的彩虹色图,注意布局引擎不可混用,导出后应检查标签裁切与字体缺失。官方文档见 https://matplotlib.org/。