SuperAPI AI 工具集

paper-plot

设计与创作

查看项目

更新于 10-16 14:55

技能介绍

用途

Paper Plot 用于产出论文质量的 matplotlib 图,方式有两种:一是用预置样式填充自己的数据,二是复现上传的论文图。所有输出均为 dpi=300 的 PNG。

使用前需注意:下文中的 <skill-dir> 指本 skill 所在目录,应替换为 skill 加载时告知的绝对路径。在 Windows 上读写 UTF-8 时,运行脚本前需加 PYTHONUTF8=1 前缀(详见 resources)。

选择模式

根据手头材料选择模式:

  • 有数据 + 目标样式(或样式名)→ from-data,参考 references/modes/from-data.md
  • 有一张待复现的论文图图片 → from-image,参考 references/modes/from-image.md

如果不确定哪种样式适合数据,from-data 说明了如何根据数据形态推断样式;from-image 说明了如何把图片匹配到某个样式,或从零构建。

样式目录(from-data)

样式 类型 脚本 适用场景
bar_paired_delta 柱状图 scripts/bar_memevolve.py Baseline vs method 配对对比 + 增益箭头
bar_grouped_hatch 柱状图 scripts/bar_spice.py 多方法消融,主方法斜线填充,柱顶数值
line_confidence_band 折线图 scripts/line_selfdistill.py 带置信区间的训练曲线
line_training_curve 折线图 scripts/line_aime.py 垂直断点线 + 水平参考线
line_loss_with_inset 折线图 scripts/line_loss_inset.py L 形 spine + 局部放大 inset
scatter_tsne_cluster 散点图 scripts/scatter_tsne.py t-SNE 聚类 + 注释框
scatter_broken_axis 散点图 scripts/scatter_break.py 折断 X 轴,多 marker 系列
radar_dual_series 雷达图 scripts/radar_dora.py 双方法多维对比,正八边形网格

每种样式的精确参数(rcParams、颜色、字号、spines、ticks)保存在 references/styles/<style>.md,生成前需先阅读对应文件。

运行脚本

# 默认输出到当前目录的默认文件名:
python <skill-dir>/scripts/<script>.py
# 或指定输出路径:
python <skill-dir>/scripts/<script>.py my_figure.png

每个脚本靠前位置内嵌了其数据(有清晰标记)——复制脚本、替换数据块,然后运行。输出路径由 argv[1] 指定(默认是工作目录下的 *_repro.png 名称)。line_selfdistill.py 会输出两张图(argv[1]、argv[2])。

依赖与注意事项

需要 matplotlib、numpy。scatter_break.py 还需要 scipy;使用 usetex=True 的样式(bar_grouped_hatch、line_confidence_band、line_loss_with_inset、scatter_tsne_cluster)需要可用的 LaTeX 安装——如果没有 LaTeX,可改为 text.usetex: False。

资源

  • 模式:references/modes/from-data.md、references/modes/from-image.md
  • 样式:references/styles/ —— 8 个参数文件
  • 从零分析:references/reproduction_guide.md
  • 脚本:scripts/ —— 8 个样式脚本 + classwise_iou_table.py(from-image 示例)
  • 图库:assets/originals/ —— 10 张用于推导样式的论文图(供 from-image 匹配时作视觉参考)

其余信息(如各脚本的具体数据内容、样式文件的完整参数值、图库中每张图的来源与说明)暂未提供。