Py学习  »  Git

耶鲁博士开源的论文配图脚本,GitHub 星标已破 8000。

开源日记 • 1 月前 • 312 次点击  


大家好,我是熊叔,今天我们继续逛 GitHub。

figures4papers 是一个开源的科研绘图仓库,它把顶会论文中实际用过的 matplotlib 配图脚本整理到一起。

像Nature MI、ICML、ECCV、NeurIPS这样的顶级会议论文,配图基本上都可以在配套代码里找到对应的画图脚本。

图片

写论文的人都知道这种痛苦:每次画图都要重新调色、调字体、调导出参数。

调完一张还有一张,很多张图放在一起,风格也不太一样。

这个仓库的想法很简单:既然这些图已经过顶级会议审稿人的审核,就把它开源出来,让后来的人可以直接使用。

图片

作者是耶鲁大学计算机科学博士生Chen Liu,仓库里的脚本大部分来自他的论文。

目前该项目在 GitHub 上的 Star 数已经超过了 8000。

figures4papers 简介

仓库里的脚本并非随意写的示例代码,每一项都有对应的真实论文作为参考。

ImmunoStruct 发表在 Nature MI 上,LM-Dispersion 发表在 ICML 上,VIGIL 发表在 ECCV 上,RNAGenScape 和 Brainteaser 发表在 NeurIPS 上。

常见图表类型都有现成的套路。

无论是柱状图、条形图、折线图,还是趋势图,科研论文中常见的图表类型这里都有。

图片

雷达图也有现成的模板,适用于多个方法在多个维度上的横向对比。

图片

此外,还有概念示意图和3D球面示意图这类不太好绘制的类型。

图片

比如说要展示某个指标随月份变化的情况,只需修改趋势图模板中的数据即可。

图片

以前,画一张像样的对比图需要翻阅大量的matplotlib文档,而现在基本上就是填空题。

内置了一个 AI 画图skill。

仓库里还有一个 scientific-figure-making 文件夹,可以看作是给 AI 编程工具的一份绘图说明书。

图片

该文件夹包含 SKILL.md 主文档以及 api、common-patterns、demos、design-theory、tutorials 等参考文档。

在Cursor、Claude Code、Codex里按路径引用即可,无需安装任何软件。

使用时,直接对AI说:

TEXT
Create a publication-quality figure script at .
Use the Scientific Figure Making skill conventions from:
- scientific-figure-making/SKILL.md
- scientific-figure-making/references/design-theory.md

AI 就会根据仓库统一的风格约定来生成画图脚本。

这相当于把“如何画出出版级配图”这件事也交给了AI。

全仓库共用一套出版级风格。

配色采用语义化的色盘:蓝色表示方法,绿色表示增益,红色表示对比,灰色表示中性数据。

字体统一走 Helvetica/Arial 字体栈,坐标轴默认去掉上边和右边的框线。

图片

导出规格是 300 dpi 起步,密集柱状图用 600 dpi,并且同时输出PNG和PDF矢量格式。

这套约定保证了多张图之间颜色、字号、线宽等都是一致的。

投稿的时候就不会出现图1一种风格、图2另一种风格的尴尬,审稿人也就少了一个挑图丑的理由。

如何使用 figures4papers

把仓库克隆到本地:

git clone https://github.com/ChenLiu-1996/figures4papers.git

画图之前,用一行代码套上出版级风格:

PYTHON
apply_publication_style(FigureStyle(font_size=24, axes_linewidth=3))

然后是普通的绘图流程,画完之后调用finalize_figure一次性导出:

PYTHON
fig, ax = create_subplots(1, 1, figsize=(8, 6))
make_grouped_bar(ax, ["A", "B"], [[1,2,3],[2,1,2]], ["X", "Y"], annotate=True)
finalize_figure(fig, "output/result", formats=["png", "pdf"], dpi=300)

png和pdf一起输出,dpi、配色、字体等等都不用再操心了。

另外也可以在Cursor或者Claude Code里直接调用AI技能,让AI按照约定来写脚本。

写在最后

figures4papers 把论文配图变成了抄作业:脚本有出处,风格有约定,导出有标准。

如果你要赶交稿、发论文或者做算法对比图的话,这个仓库还是值得一看的。

画得越多,投得越少,统一模板节省下来的时间也就越大。

正在写论文的人可以先用自己最常画的两种图来套模板。

开源地址:https://github.com/ChenLiu-1996/figures4papers

平时我会持续分享一些有趣的开源项目,有兴趣的朋友可以关注一下。

回复关键词就可以找到你要找的项目。

图片

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/201843