mcpField
F
figure-generation

figure-generation

github.com/lingzhi227数据与数据库4402.3k 次安装35 周前更新
代码仓库

关于 figure-generation

figure-generation 是面向科研论文作者的科学绘图技能,可根据图表描述和数据生成图像,并通过执行和视觉检查进行迭代完善。输出包括 PNG、PDF 和 LaTeX 插图代码。

主要功能

  1. 01支持多种科研图表类型
  2. 02根据描述生成 Python 绘图脚本
  3. 03执行脚本并根据错误重试
  4. 04检查图像并迭代调整
  5. 05输出 PNG、PDF 和 LaTeX 代码

适用场景

  1. 01根据实验数据制作论文图表
  2. 02生成训练曲线或消融实验图
  3. 03检查并调整图表标签、配色和坐标轴

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/lingzhi227/agent-research-skills --skill figure-generation

安装后在 Claude Code 中输入/figure-generation确认已加载。

附带文件references/figure-prompts.mdscripts/figure_template.py

详细介绍

科学图表生成

为研究论文生成可供发表的高质量图表。

输入

  • $0 — 所需图表的描述
  • $1 — (可选)数据文件路径(CSV、JSON、NPY、PKL)或结果目录

脚本

生成图表模板
python ~/.claude/skills/figure-generation/scripts/figure_template.py --type bar --output figure_script.py --name comparison
python ~/.claude/skills/figure-generation/scripts/figure_template.py --list-types

可用类型:bar、training-curve、heatmap、ablation、line、scatter、radar、violin、tsne、attention

三阶段流程(来自 MatPlotAgent)

阶段 1:查询扩展

使用 references/figure-prompts.md 中的提示词,将用户对图表的描述扩展为分步编码规范。确定:图表类型、数据映射(x/y/颜色/色调)、样式要求、论文规范。

阶段 2:代码生成与执行循环(最多重试 4 次)
  1. 以 scripts/figure_template.py 中的模板为基础,生成独立的 Python 脚本
  2. 将脚本写入临时文件并执行:python figure_script.py
  3. 如果出错:捕获回溯信息并反馈,重新生成(参见 references 中的 ERROR_PROMPT)
  4. 如果未生成 .png:添加明确的保存指令,然后重试
  5. 成功后:报告生成的图表路径
阶段 3:视觉优化

读取生成的 PNG 文件,并使用 references/figure-prompts.md 中的 VLM 反馈提示词进行视觉检查:

  • 图表类型是否符合要求?
  • 标签、标题和图例是否正确?
  • 配色方案是否恰当且一致?
  • 坐标轴刻度是否合理?文本在出版尺寸下是否清晰可读?

如果需要改进:生成修正指令并重新执行。

参考资料

  • 所有 MatPlotAgent 提示词:~/.claude/skills/figure-generation/references/figure-prompts.md
  • 图表模板:~/.claude/skills/figure-generation/scripts/figure_template.py

输出

同时提供 PNG(预览,300 DPI)和 PDF(矢量,适用于论文)格式,以及 LaTeX 插入代码:

\begin{figure}[t]
    \centering
    \includegraphics[width=\linewidth]{figures/figure_name.pdf}
    \caption{Description. Best viewed in color.}
    \label{fig:figure_name}
\end{figure}

质量要求

  • DPI ≥ 300,或使用矢量 PDF
  • 使用色盲友好型调色板(不能只使用红色和绿色)
  • 打印尺寸下的所有文本 ≥ 8pt
  • 论文中的所有图表样式保持一致
  • 不使用 matplotlib 默认标题 — 使用 LaTeX 图注

相关技能

评论

支持 Markdown