mcpField
P
polish-tables-figures

polish-tables-figures

github.com/shaishavmaisuria文档处理5795 次安装4 天前更新
代码仓库

关于 polish-tables-figures

polish-tables-figures 面向准备 CS venue 论文的研究者,用于整理 LaTeX 表格与图形。它调整浮动体、标题、引用、尺寸和颜色可访问性,同时保留所有数据值。

主要功能

  1. 01将表格转换为 booktabs 样式
  2. 02调整表格与图形尺寸
  3. 03将图表排列为子图
  4. 04检查标题与交叉引用
  5. 05检查颜色可访问性

适用场景

  1. 01润色 camera-ready 论文的表格
  2. 02修复超出栏宽的浮动体
  3. 03检查图表配色的可访问性

安装

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

$npx skills add https://github.com/shaishavmaisuria/research-paper-lifecycle-skills --skill polish-tables-figures

安装后在 Claude Code 中输入/polish-tables-figures确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
captions-crossrefs.md
color-accessibility.md
figures.md
tables.md
scripts/
check_floats.py
palettes.py
venueyaml.py

详细介绍

润色表格与图形

将初稿质量的 LaTeX 浮动体打磨成 ACM / IEEE / NeurIPS 风格 / LNCS 会议期刊审稿人期待看到的表格与图形:使用 booktabs 横线、适配页面宽度的列、整洁的子图布局、符合会议期刊规范的标题、一致的 \cref 引用,以及色盲友好的配色。所有更改仅涉及呈现;数字神圣不可改动。

适用场景

  • “让我的表格/图形看起来更专业” / “润色到可供终稿提交”
  • “把这个表格转换为 booktabs 格式” / “我的表格太宽了” / “行溢出”
  • “将这些绘图排成子图” / “修正我的标题”
  • “我的图形配色对色盲友好吗?” / “为这张绘图挑选一套配色”
  • “修复我的 \ref/\cref 混乱问题”
  • 在 tailor-to-venue 之后、preflight-check 之前。

输入

  1. 主 .tex 文件(含有 \documentclass 的文件);会自动跟进 \input/\include 文件。
  2. 可选:会议期刊配置文件 venues/conferences/<venue>-<year>.yml(架构见 venues/schema.yml)——用于设置栏数和标题规范。若未提供,则根据 documentclass 推断规范。
  3. 强烈建议:提供与 .tex 文件同目录的已编译 .log 文件,以便运行列宽检查(行溢出)。

流程

  1. 确定会议规范。 如果指定了会议,加载其配置文件 (使用 python3 scripts/venueyaml.py venues/conferences/<venue>.yml 进行合理性检查)。 依赖格式关键事实前,务必根据实时的 cfp_url 再次核实:模板/文档类、栏数、任何已说明的图表 规则(最小字号、颜色/灰度要求、无障碍要求)。配置文件只是起点,绝非最终依据。

  2. 先检查所有内容:

    python3 scripts/check_floats.py paper.tex \
        --venue venues/conferences/<venue>-<year>.yml
    

    标志:--json、--strict(警告也会导致失败)、--log <file>、 --overfull-threshold <pt>、--no-inputs。退出码:0 表示无问题, 1 表示发现问题,2 表示参数错误。检查器涵盖:booktabs 样式 (\hline、\cline、竖线、双线、缺少宏包)、 \resizebox/缩小字号、按类别检查标题位置、缺少 \caption/\label/\centering/ACM \Description、 标题前的标签、已弃用的 subfigure 宏包、双栏会议中单栏浮动体使用 width=\textwidth、 栅格图、[h]/[H] 浮动位置、 未定义和未引用的标签、混用 Figure~\ref 与 \cref 样式、 “Figure \cref”双重前缀、cleveref 加载顺序、句首小写 \cref,以及 .log 中的 Overfull \hbox 条目。

  3. 修复表格 — 根据 references/tables.md 逐项处理发现的问题:机械式 booktabs 转换方案(逐字节保留单元格内容),然后在页面宽度限制内调整列宽(删减 → 缩写 → 对齐 数字 → \tabcolsep → tabularx → table* — 绝不使用 \resizebox)。

  4. 修复图 — 参见 references/figures.md: 宽度规范(\columnwidth/\linewidth,跨栏时使用 figure*)、 使用 subcaption 排布子图、矢量格式、图中字号、浮动位置。

  5. 修复标题和交叉引用 — 参见 references/captions-crossrefs.md: 按类别区分的标题位置/样式表、自包含标题的撰写,以及 cleveref 设置(最后加载、capitalise、 \cref 与 \Cref 的用法、全文统一一种样式)。

  6. 修复颜色 — 参见 references/color-accessibility.md。 检查论文中实际使用的颜色(TikZ/pgfplots 定义中的十六进制值,或从包含的图中采样):

    python3 scripts/palettes.py check 4477AA EE6677 ...   # arbitrary colors
    python3 scripts/palettes.py show okabe-ito --format latex|pgfplots|matplotlib
    

    check 会模拟红色盲、绿色盲、蓝黄色盲和灰度打印效果, 标记容易混淆的颜色对(退出码为 1);参考文件会说明冗余编码(使用标记和线型,而非仅靠颜色)。如果图由 用户脚本(matplotlib/pgfplots)生成,请修改绘图源代码并请用户重新生成 — 绝不可声称结果已重新着色。

  7. 重新编译并再次运行检查器,直到判定结果为 PASS(或所有剩余 WARN 都是经用户批准的有意选择)。然后交由 preflight-check 执行完整的拒稿前检查。

输出

原位应用对 .tex(及绘图脚本)的修改,并为每个浮动体附上简短的变更日志:说明修改内容和原因,并引用会议规范。 另附最终检查器报告(PASS / PASS-WITH-WARNINGS / FAIL)。除非用户要求提取样式片段(例如 colors.tex 调色板导言区),否则不创建新文件。

根据学科调整

此处规范面向计算机科学会议(ACM/IEEE/ML/LNCS)。若要适配其他领域:调整 references/captions-crossrefs.md 中的标题位置规范,以及 scripts/check_floats.py 中的类别映射(convention_label);booktabs、尺寸调整和 颜色指南适用于所有领域。

防护原则

  • 绝不更改数据:单元格值、单位、有效数字、坐标轴刻度、误差线和图例含义均不得更改。只能重新排版。如果某个值看起来有误,请告知用户,不要“修正”它。
  • 绝不捏造投稿场所规则。个人资料和当前的征稿启事(CFP)是唯一信息来源;如果两者都未说明某项规则,请将相关建议标注为通用惯例。
  • 不要自行重新生成或重新着色结果图;应编辑用户的绘图源文件,让用户重新运行。
  • 最佳结果的加粗格式必须依据用户明确说明的标准,而不是依据你对哪个数字“看起来最好”的判断。
  • 发现的引用问题应交由 verify-citations 处理;投稿准备情况应交由 preflight-check 处理。绝不要代替用户提交任何内容。

评论

支持 Markdown