figure-table-quality

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Figure & Table Quality Audit

图表质量审计

Pipeline position: Phase 2.5 (between Grounding/Polish and Submission). Runs after figure-rhetoric (content) and before arxiv-preflight (compliance). See
/manuscript-pipeline
for full execution order.
流程阶段: 第2.5阶段(介于定稿润色与提交之间)。 在figure-rhetoric(内容审核)之后运行,在arxiv-preflight(合规性检查)之前运行。 完整执行顺序请查看
/manuscript-pipeline

Purpose

目的

Verify that every figure and table in a manuscript renders at readable size in the compiled PDF. figure-rhetoric checks whether figures communicate the right message. This skill checks whether the reader can physically read them.
确保手稿中的每一张图表在编译后的PDF中都能以可读尺寸显示。figure-rhetoric负责检查图表是否传达了正确的信息,而本工具则负责检查读者能否清晰地读取图表内容。

Execution

执行步骤

Step 1 — Build the display-scale map

步骤1 — 构建显示比例映射表

For every
\includegraphics
in the .tex source:
  1. Extract the display width (e.g.,
    \textwidth
    ,
    0.7\textwidth
    ,
    0.55\textwidth
    )
  2. Compute the effective display width in inches using the document geometry
  3. Read the figure generation script to find the
    figsize
    for each figure
  4. Compute:
    scale = display_width / figsize_width
Also extract from the generation script or config:
  • Base font sizes: title, label, tick, legend, annotation
  • Marker sizes, line widths
  • Bar widths (for grouped bar charts)
对于.tex源文件中的每一个
\includegraphics
指令:
  1. 提取显示宽度(例如:
    \textwidth
    0.7\textwidth
    0.55\textwidth
  2. 根据文档几何设置计算以英寸为单位的有效显示宽度
  3. 读取图表生成脚本,获取每张图表的
    figsize
    参数
  4. 计算:
    scale = display_width / figsize_width
同时从生成脚本或配置文件中提取:
  • 基础字体大小:标题、标签、刻度、图例、注释
  • 标记大小、线条宽度
  • 条形宽度(适用于分组条形图)

Step 2 — Per-figure audit (all 9 checks)

步骤2 — 单图表审计(共9项检查)

For each figure, compute effective values at display scale and check:
针对每张图表,计算显示比例下的有效值并进行检查:

2a. Font size at render

2a. 渲染时的字体大小

effective_font = script_font × scale
ElementMinimumWarning
Axis title7pt8pt
Tick labels6pt7pt
Legend text6pt7pt
Annotations6pt7pt
Panel titles7pt8pt
FAIL if any element falls below minimum. WARN if any element falls below warning threshold.
effective_font = script_font × scale
元素最小值警告阈值
坐标轴标题7pt8pt
刻度标签6pt7pt
图例文本6pt7pt
注释文本6pt7pt
面板标题7pt8pt
失败:若任意元素低于最小值。 警告:若任意元素低于警告阈值。

2b. Label collision

2b. 标签冲突检查

Check for overlapping text in:
  • X-axis tick labels (especially with rotation < 45° and > 3 labels)
  • Y-axis tick labels (long text strings)
  • Data annotations near each other
  • Legend entries overlapping data
For rotated labels: compute horizontal footprint as
len(label) × char_width × cos(rotation)
. If footprint > tick spacing, FAIL.
检查以下场景中的文本重叠:
  • X轴刻度标签(尤其是旋转角度<45°且标签数量>3的情况)
  • Y轴刻度标签(长文本字符串)
  • 彼此靠近的数据注释
  • 图例条目与数据重叠
对于旋转标签:计算水平占用空间为
len(label) × char_width × cos(rotation)
。若占用空间大于刻度间距,则失败

2c. Marker and line visibility

2c. 标记与线条可见性

effective_marker = script_marker × scale
effective_linewidth = script_linewidth × scale
  • Markers below 4pt effective: WARN
  • Line widths below 0.5pt effective: WARN
effective_marker = script_marker × scale
effective_linewidth = script_linewidth × scale
  • 有效标记大小低于4pt:警告
  • 有效线条宽度低于0.5pt:警告

2d. Bar chart readability

2d. 条形图可读性

For grouped bar charts:
  • Compute effective bar width in inches
  • Check if bars are distinguishable (minimum 3pt effective width)
  • Check if hatch patterns render at effective size
  • Check for bar-label alignment
针对分组条形图:
  • 计算以英寸为单位的有效条形宽度
  • 检查条形是否可区分(最小有效宽度为3pt)
  • 检查图案在有效尺寸下是否可渲染
  • 检查条形标签对齐情况

2e. Color and hatch accessibility

2e. 颜色与图案可访问性

  • Are all series distinguishable in grayscale?
  • Do hatch patterns provide redundant encoding for color?
  • Are there more than 5 colors without hatching? WARN
  • Are similar colors used for unrelated series?
  • 所有系列在灰度模式下是否可区分?
  • 图案是否为颜色提供了冗余编码?
  • 无图案的颜色数量超过5种?警告
  • 是否将相似颜色用于无关系列?

2f. Axis range efficiency

2f. 轴范围效率

  • Compute data range vs axis range
  • If less than 40% of axis range contains data: WARN (wasted space)
  • If data touches axis boundary: WARN (clipped data)
  • 计算数据范围与轴范围的比例
  • 若轴范围中仅有不到40%包含数据:警告(空间浪费)
  • 若数据触及轴边界:警告(数据被截断)

2g. Annotation readability

2g. 注释可读性

  • Do any data annotations overlap each other?
  • Are annotations positioned to avoid occluding data?
  • Do annotations use consistent formatting (fontsize, weight)?
  • 是否存在数据注释相互重叠的情况?
  • 注释位置是否避免遮挡数据?
  • 注释是否使用一致的格式(字体大小、字重)?

2h. Legend placement

2h. 图例位置

  • Does the legend overlap any data points or bars?
  • Is the legend in a consistent position across similar figures?
  • For multi-panel figures: is the legend in the first panel only (not repeated)?
  • 图例是否与任何数据点或条形重叠?
  • 相似图表的图例位置是否一致?
  • 对于多面板图表:图例是否仅在第一个面板显示(未重复)?

2i. Whitespace and margins

2i. 空白区域与边距

  • Does
    tight_layout()
    or equivalent handle margins?
  • Are panel titles cut off?
  • Is there excessive whitespace (> 30% of figure area empty)?
  • 是否使用
    tight_layout()
    或等效方法处理边距?
  • 面板标题是否被截断?
  • 是否存在过多空白区域(超过图表面积的30%为空)?

Step 3 — Table audit

步骤3 — 表格审计

For each
\begin{tabular}
or
\begin{table}
:
  1. Column alignment — Are numeric columns right-aligned? Text left-aligned?
  2. Rule style — Uses booktabs (
    \toprule
    ,
    \midrule
    ,
    \bottomrule
    )? No vertical rules?
  3. Caption position — Table captions above, figure captions below?
  4. Width — Does the table overflow margins? Check for
    \resizebox
    or
    \small
    hacks.
  5. Number formatting — Consistent decimal places? Aligned decimal points?
  6. Header clarity — Are column headers unambiguous?
针对每一个
\begin{tabular}
\begin{table}
  1. 列对齐 — 数值列是否右对齐?文本列是否左对齐?
  2. 线条样式 — 是否使用booktabs(
    \toprule
    \midrule
    \bottomrule
    )?是否无竖线?
  3. 标题位置 — 表格标题是否在上方,图表标题是否在下方?
  4. 宽度 — 表格是否超出边距?检查是否使用
    \resizebox
    \small
    等临时解决方案。
  5. 数字格式 — 小数位数是否一致?小数点是否对齐?
  6. 表头清晰度 — 列表头是否明确无歧义?

Step 4 — Cross-figure consistency

步骤4 — 跨图表一致性

  1. Shared elements — Do figures that share axes use the same scale?
  2. Color scheme — Is the same color used for the same condition across all figures?
  3. Label vocabulary — Are condition/model labels identical across all figures?
  4. Font family — Same font across all figures?
  1. 共享元素 — 共享坐标轴的图表是否使用相同的比例?
  2. 配色方案 — 同一条件在所有图表中是否使用相同颜色?
  3. 标签术语 — 条件/模型标签在所有图表中是否完全一致?
  4. 字体族 — 所有图表是否使用相同字体?

Output format

输出格式

markdown
undefined
markdown
undefined

Figure & Table Quality Report

图表质量报告

Display Scale Map

显示比例映射表

Figurefigsizedisplayscaleverdict
fig17×46.27"90%OK
图表figsize显示尺寸比例结论
fig17×46.27"90%正常

Per-Figure Findings

单图表检查结果

Figure 1 (fig1_resolve_rates.pdf)

图表1 (fig1_resolve_rates.pdf)

  • [PASS] Font sizes: tick 8.1pt, legend 8.1pt
  • [PASS] No label collisions
  • [WARN] Bar width 3.2pt — borderline at print size ...
  • [通过] 字体大小:刻度8.1pt,图例8.1pt
  • [通过] 无标签冲突
  • [警告] 条形宽度3.2pt — 打印尺寸下接近临界值 ...

Table Findings

表格检查结果

Table 1 (table1_resolve.tex)

表格1 (table1_resolve.tex)

  • [PASS] Booktabs rules
  • [PASS] Caption above tabular ...
  • [通过] 使用booktabs线条
  • [通过] 标题位于表格上方 ...

Cross-Figure Consistency

跨图表一致性

  • [PASS] Color scheme consistent
  • [FAIL] Label mismatch: fig2 uses "cmd", other figures use "Yuj"
  • [通过] 配色方案一致
  • [失败] 标签不匹配:fig2使用"cmd",其他图表使用"Yuj"

Summary

总结

  • [count] FAIL (must fix)
  • [count] WARN (should fix)
  • [count] PASS
undefined
  • [数量] 失败(必须修复)
  • [数量] 警告(建议修复)
  • [数量] 通过
undefined

Auto-Fix Rules

自动修复规则

AUTO-FIX (apply directly):
  • Rotation increase for overlapping x-labels (20°/15° → 45°)
  • figsize reduction to match display context (eliminate >25% downscaling)
  • Missing
    tight_layout()
    calls
  • Inconsistent label text across figures (align to config/source of truth)
HUMAN-REQUIRED (present and wait):
  • Figure redesign (different layout, panel arrangement)
  • Axis range changes
  • Color scheme changes
  • Font size increases that affect layout
  • Table restructuring
自动修复(直接应用):
  • 增加重叠X轴标签的旋转角度(从20°/15°改为45°)
  • 调整figsize以匹配显示场景(消除超过25%的缩小比例)
  • 补充缺失的
    tight_layout()
    调用
  • 统一跨图表的标签文本(与配置文件/可信源对齐)
人工处理(提示等待):
  • 图表重新设计(不同布局、面板排列)
  • 轴范围调整
  • 配色方案更改
  • 影响布局的字体大小调整
  • 表格结构重组

Integration

集成说明

This skill reads:
  • .tex
    source (
    \includegraphics
    directives,
    \geometry
    settings)
  • Figure generation scripts (figsize, font sizes, rotations, annotations)
  • Figure config files (shared settings)
  • Generated figure files (visual spot-check if PDF readable)
  • Table
    .tex
    files
It does NOT:
  • Evaluate whether figures communicate the right message (that's figure-rhetoric)
  • Check arXiv format compliance (that's arxiv-preflight)
  • Audit prose or claims (that's manuscript-review)
本工具读取以下内容:
  • .tex源文件(
    \includegraphics
    指令、
    \geometry
    设置)
  • 图表生成脚本(figsize、字体大小、旋转角度、注释)
  • 图表配置文件(共享设置)
  • 生成的图表文件(若PDF可读则进行视觉抽查)
  • 表格.tex文件
本工具不负责:
  • 评估图表是否传达正确信息(由figure-rhetoric负责)
  • 检查arXiv格式合规性(由arxiv-preflight负责)
  • 审核文稿内容或论点(由manuscript-review负责)