你在写论文的时候,有没有遇到过这个问题:
实验结果都很好,但配的图丑到不想发。
matplotlib 人人会用,但画出来的图,跟顶会论文那种干净利落的风格,总是差一口气——字体不对、配色太杂、坐标轴太细。。。
Chen Liu,耶鲁大学 CS PhD,把他做图的方法论开源了。

▲ 57 个模板,对应发表在 Nature MI、ICML、NeurIPS、ECCV 的论文。
01 不是工具,是一套方法论
大多数”如何画好论文图”的文章,教你的是 matplotlib 语法和配色选择。
Chen Liu 做的事不一样——他把自己实际发表过的图的制作方法,全部开源了。
57 个 figure_* 项目,每个都是一个真实论文的配图工程。有柱状图对比(ImmunoStruct)、雷达图多指标(VIGIL)、趋势线图(眼科综述)、热力图混淆矩阵、3D 球体概念图、Bar plot 消融实验……每种都有对应的 Python 脚本。

▲ VIGIL(ICML)的雷达图
02 House Style:字体、配色、导出,一整套规范
这套 skill 最核心的资产是 House Style——一套完整的出版级 matplotlib 配置。
字体系统: 主字体 Helvetica,fallback 到 Arial / DejaVu Sans。大号柱状图用 24pt,紧凑分析图用 15-16pt。标题中英双语独立 span,英文负责节奏,中文负责说清楚。
配色语义: 蓝色系用于目标方法,绿色渐变表示增量改进,红色用于对比基线,中性灰做背景和辅助。这不是随机选的,是每个颜色在整篇论文里有一致的语义。
坐标轴: 顶部和右侧 spine 直接关掉,只留左边和下边。线宽根据图的类型动态调整——大图 3pt,紧凑图 2pt。
导出策略: 默认 300 DPI PNG,密集柱状图用 600 DPI,同时输出 PDF/SVG 矢量版。svg.fonttype = 'none' 保留可编辑文字,tight_layout(pad=2) 统一留白。
布局智慧: 复杂多图用独立 legend subplots(关掉坐标轴只放图例),避免图例遮挡数据。Y 轴范围根据数据动态压缩,而不是用默认的 0 到最大值。
这些细节看起来小,但每一条都是顶会审稿人眼里”这张图很专业”的来源。

▲ ImmunoStruct(Nature MI)的分组柱状图
03 五个核心函数,够用一整天
Skill 封装了五个核心绘图函数,覆盖了学术论文里最常见的图表类型:
make_grouped_bar:分组柱状图,支持直接标注数值(annotate=True),自动调整 y 轴范围突出差异。消融实验用 alpha 渐变表示完整度,用 hatch 图案保证黑白打印可读。
make_trend:趋势线图,支持多条曲线 + 置信区间阴影。每条线 2-3pt 线宽,最多 4 条主曲线,避免视觉过载。
make_heatmap:热力图,自动添加 colorbar 和单元格标注。适合混淆矩阵、相关性矩阵。
make_scatter:散点图,单系列支持大小和透明度控制。
make_sphere_illustration:3D 球体概念图,用阴影圆盘模拟立体感。适合做方法概述的视觉锚点。

▲ Dispersion 的 3D 球体概念图:纯 matplotlib 实现,无外部 3D 库
每个函数都有完整的类型提示和 Google 风格 docstring,抄进自己项目直接用。
04 Skill 化:装进 Claude Code,一次配置永久复用
这不只是几个 Python 脚本,而是一套完整的 Skill:
scientific-figure-making/
├── SKILL.md # 入口:何时加载、使用模式、链接
└── references/
├── api.md # 函数签名、PALETTE、验证规则
├── common-patterns.md # 布局模式、图例面板、打印安全编码
├── design-theory.md # 设计原则和 rcParams 预设
├── tutorials.md # 端到端教程(柱状图、趋势、热力图)
└── demos.md # 57 个 figure_* 项目的 canonical 链接
安装方式极简:
# Cursor
mkdir -p ~/.cursor/skills && ln -s "$(pwd)/scientific-figure-making" ~/.cursor/skills/scientific-figure-making
# Claude Code
mkdir -p ~/.claude/skills && ln -s “$(pwd)/scientific-figure-making” ~/.claude/skills/scientific-figure-making
# Codex
mkdir -p ~/.codex/skills && ln -s “$(pwd)/scientific-figure-making” ~/.codex/skills/scientific-figure-making
装好之后,AI 编程工具就知道你的论文图应该长什么样了。给一个数据集,它会自动套用这套 House Style 出图。
05 为什么这套方法论值钱
Chen Liu,耶鲁大学 CS PhD Candidate。
他的个人主页上列着 20+ 篇论文,发表过 Nature Machine Intelligence、ICML、NeurIPS、ECCV。
这套 skill 的每一个设计决策——字体大小、配色选择、导出参数——都经过了同行评审的检验。
而且这套方法论不是封闭的。仓库里有 open PR,还有人在推进 skill 的重构和复杂多面板演示。
社区在持续迭代。
06 适合谁,不适合谁
适合:
- • 正在写论文的研究者:直接拿 demo 代码改数据,省去反复调样式的痛苦
- • AI 编程工具用户:装进 Claude Code/Codex/Cursor,让 AI 用你的 House Style 出图
- • 需要批量产出同一风格论文的团队:统一配色和排版
不适合:
- • 做交互式可视化的开发者:这是 matplotlib 静态图,不是 Plotly/Altair
- • 做信息图/宣传海报的:这套风格偏学术严谨,不适合商业传播
写在最后
学术出版的潜规则是:好实验配好图,才能过初审。
5k Star 说明这件事戳中了很多人的痛点。
GitHub:https://github.com/ChenLiu-1996/figures4papers





评论(0)