资讯动态

OpenResearch orx-figures 实战指南:用 matplotlib 与 TikZ 产出可发表级论文插图

发布时间:2026/9/20 3:57:23 来源:尧图企业网站定制
人工智能AI Agent深度研究自主智能体Agent 编排【免费下载链接】OpenResearchTurn your coding agents into research agents项目地址https://gitcode.com/GitHub_Trending/op/OpenResearch点击查看免费下载本指南围绕 OpenResearch 仓库中的 orx-figures 技能模块 展开系统讲解如何把实验结果变成经得起审稿人推敲的论文级插图从非谈判底线的 8 条硬性规范、一次性项目配置、图形落位与引用契约到学习曲线、Scaling Laws、基准对比/消融、Pareto 前沿、热图/混淆矩阵、TikZ 架构图六类标准模板最后落在save()的自动审计与交付自检。读完你将掌握一套可复制的按最终印刷尺寸构建 矢量导出 不确定性显式化 图注即标题的完整绘图工作流并能在源码层面理解 orx_figstyle.py 每个默认值背后的出版级考量。一、一个基本判断论文插图是论证不是数组的截图orx-figures 模块开宗明义论文中的一张图是一个论证argument它只陈述一个主张跳过正文的读者也应该从图中读对这个主张。默认的 matplotlib 输出达不到这个标准——它按屏幕尺寸绘制、把标题放在图注该在的地方、用黑白打印即失效的色环、在文档需要矢量图的地方输出位图。因此该模块把以下8 条非谈判底线Non-negotiables作为所有绘图的起点按最终印刷尺寸构建Build at the final printed size。一张按 8 英寸宽绘制、再缩到 3.25 英寸栏宽的图刻度标签只有 3pt。宽度从样式模块的COLUMN/TEXT/WIDE中选择再用width\linewidth引入——尺寸正确时它按 1.0 缩放、不做任何改变。永远不要画大图再缩小。一张WIDE图只应在双栏论文的figure*环境里获得 6.75 英寸的\linewidth放在普通figure中会被静默缩到约一半宽度。矢量输出Vector out。同时写 PDF供\includegraphics与 SVG供预览。坐标轴、线条、文字这类内容被栅格化就是缺陷——审稿人一放大就糊。PNG 只适合真正栅格的内容照片、样本图像网格、像素级注意力图。每个数字都来自一次真实运行。用orx logs读取指标见 orx-evidence 模块绝不绘制记忆中的、四舍五入的或看起来合理的数字也绝不让合成演示数据留在随脚本发布的作品里。图注就是标题。论文图中禁止ax.set_title——标题与图注重复且偷走纵向空间。多面板图用(a)、(b)字母来命名各部分。展示不确定性或者明说没有。一个种子只是轶事。跨种子绘制区间并在图注中说明种子数如果只有一个运行就写 single seed而不是暗示更多。坐标轴标注单位。Loss 是标签step 不说明是优化器步数还是 token 数就不算标签。色盲安全、灰度安全。使用模块的调色板永远不要jet、rainbow、hsv——它们会在数据不存在的地方发明出结构。无衬线文字且所有图同一字体。use_style()默认使用 Helvetica 度量无衬线字体这是 Nature 和 Science 对插图文字的要求也经得起刻度标签实际印刷的 5–8pt 字号考验。图内文字是独立字体域不必与正文一致但必须在你所有图含示意图之间一致。只有图中数学公式密集、需要与衬线排版融为一体的图才传use_style(familyserif)。二、一次性项目级配置样式模块落地与运行环境样式模块应被vendor随项目复制到图脚本旁边这样本会话结束后图仍可复现。在任意目录执行mkdir -p figs orx skill figures/assets/orx_figstyle.py figs/orx_figstyle.py注意两点脚本放在哪个目标目录就在哪个目录旁边再放一份报告脚本若放在 artifacts 目录下需要它自己的副本否则 import 失败重定向会先创建目标文件再执行查找所以导入前先确认文件非空。运行 Python 绘图模板遵循会话 playbook 的 Python 策略模板依赖matplotlib与numpy。独立绘图用 uv 隔离环境uv run --no-project --with matplotlib --with numpy python figs/loss_curve.py脚本内带有内联依赖元数据inline script dependencies时直接uv run --no-project figs/loss_curve.py让 uv 读取该元数据。而导入项目代码的绘图脚本必须在项目环境内运行不能放进上面的隔离环境。三、图放哪里、怎么引用最容易翻车的环节模块把落位与引用绑成一对搞错这对组合是成品图最终以坏链接形式到达用户的最常见原因图的用途写入位置引用方式论文.tex工作树中.tex旁边的figs/——\includegraphics按源文件相对路径解析artifacts 目录不在它旁边file pathfigs/loss_curve.pdf /—— 仓库相对路径不带artifacts/前缀报告、摘要、聊天回答加载 orx-reports 模块使用 artifacts 目录下对应主题/交付物子目录如transformer-sweep/figures/file pathartifacts/transformer-sweep/figures/loss_curve.pdf /标签必须与落位匹配。图写在工作树却用artifacts/前缀引用会在 artifacts 目录和工作树的artifacts/...下都找不到它用户点击即 File not found。这两个是仅有的目的地。打算引用的图绝不写进/tmp、临时目录或工作树与 artifacts 目录之外的任何地方——聊天文件链接只在这两个根上解析。把日志或中间数据拉进/tmp没问题但图以及生成它的脚本不是中间产物。生成脚本与输出同目录figs/loss_curve.py→figs/loss_curve.pdf、figs/loss_curve.svg。脚本一旦丢失审稿人要求再来一个种子时就无法修正。最后按列宽构建 仍写width\linewidth二者缺一不可\begin{figure}[t] % 双栏论文中的 WIDE 图请用 figure* \centering \includegraphics[width\linewidth]{figs/loss_curve.pdf} \caption{Validation loss over training, mean of 5 seeds with 95\% intervals.} \label{fig:loss} \end{figure}尺寸正确时width\linewidth缩放 1.0、什么都不改——但若会议栏宽比你假设的更窄它依然适配。它救不了按错误尺寸构建的图15 英寸画布塞进 5.5 英寸栏会被缩到 0.3511pt 刻度标签落到 4pt。这正是真实论文插图不可读的最常见原因而width\linewidth只是把它藏到了印刷之前。四、图注是标题随图一起写而不是草稿之后补每条参考都要求在图注中说明state it in the caption这意味着图注与图同时写。当前论文图注中位数约 28 词一半以上是三句或更多。主导形态是一句加粗短语陈述主张随后给出读者信任它所需的细节\caption{\textbf{LPO reaches the reward plateau in a third of the compute.} Held-out reward against training compute for LPO and two baselines; mean of 5 seeds, bands are 95\% intervals. The dotted line is the pretrained model.}以结论开头而不是以设定开头。Training curves for LPO and baselines 只是复述了坐标轴已表达的内容图注第一分句应是希望读者记住的东西。图必须独立成篇。跳过正文第 4 节的读者也应读对主张——这是整张图的全部职责。把方法事实写在这里因为图内其他地方没有空间种子数、色带/柱条的含义、任何平滑、任何归一化、哪些点被拟合哪些被排除、前沿线是实测还是示意。必要时说明图中没有的东西单个种子、截断的轴、提前终止的运行。不要用文字复述轴标签也不要把图注重复成轴标题——标题是图注的职责。单面板图约 25–40 词多面板图更多且每个面板要有自己的分句。五、多面板图的组织纪律当前 ML 论文中约四分之一是(a)/(b)子面板或Left:/Right:对的多面板图。面板是横跨所有图型的构图选择且失败方式一致每个面板在左上角标(a)、(b)……panel_labels()。正文引用 Fig. 2b没有字母就只能按位置指代面板一动即失效。面板共享同一数量时共享坐标轴shareyTrue共享轴上只在显示刻度的面板处放一个标签。两个同度量面板在静默不同的范围上是多面板版的截断柱状轴——读者在比较不可比的柱高。整图一个图例放在面板下方或最后一个面板外侧而不是每面板一个。面板按论证顺序阅读从左到右、从上到下。(a) 应是正文最先讨论的那个。面板若不支撑同一个主张它们就是分开的图。2×3 个无关子图是联系表contact sheet图注只能读成清单而非句子。用figure_grid(nrows, ncols, widthTEXT, shareyTrue)构建——它把整个网格缩放到最终印刷宽度。六、按图要回答的问题选择参考模板而不是按形状图要回答的问题阅读指标在训练中如何变化差距是否大于种子噪声references/curves.md性能如何随规模变化趋势预测什么references/scaling.md哪个方法跨基准胜出或被消融的哪个组件重要references/comparison.md什么与什么相互权衡——reward vs KL、质量 vs 成本或延迟references/pareto.md这个 2D 网格、混淆矩阵或扫描长什么样references/matrix.md方法、架构或流水线是什么references/diagram.md每个参考的模板都写到figs/即论文落位。报告或聊天回答则按 orx-reports 规则把模板脚本与输出路径改到所选目录。不要读你不打算绘制的参考已安装的参考读不到时orx skill figures/name会把它打印出来。六类之外的东西照片、定性样本网格、地图依然遵守上面的非谈判底线与样式模块。七、学习/训练曲线x 轴与种子是两大隐形错误源这是投稿论文中最常画错的图因为两种误导方式在画完之后都不可见错误的 x 轴和单一种子。先定 x 轴再做别的。优化器steps只在每个运行每步做同样工作时才是公平的轴。一旦批大小、序列长度、模型尺寸或硬件在曲线间不同steps 就不可比必须改为针对实际差异绘制比较绘制的 x 轴相同配置、不同种子或代码变更优化器 steps不同批大小或序列长度已见 token或样本数不同模型尺寸FLOPs或 token 数并在每条曲线注明尺寸速度或效率主张墙钟时间并注明硬件一半步数收敛而每步耗时翻倍的方法并不更快而 steps 轴恰好掩盖了这一点。聚合种子绝不挑一个。至少跑 3 个种子效应小时跑 5 个。均值画线95% 区间画同色低透明度色带样式模块的band()图注写明 n。±1 个标准差回答的是种子有多分散不是均值被解析得多好——用区间。若种子定性分歧一个发散、其余正常那本身就是结果画各次运行的细线而不是把分歧藏进宽色带。种子很少在相同 step 网格上记录。先插值到公共网格再平均直接平均参差数组会静默截断到最短的一个。平滑是对数据的声明。训练损失有噪声、不平滑曲线不可读但平滑是对证据的变换图注中始终声明平滑方式EMA, α0.1在平滑线下画淡的原始序列——单独一条平滑线会让读者以为那次运行本就那么稳定绝不要平滑本就稀疏的评估指标——那是在真实测量点之间编造数据。陷阱速查陷阱修复Y 轴截断让微小差距显得决定性纳入关键范围若缩放就在图注说明对数轴而不声明在标签上说明。指标跨越一个数量级以上或主张关于比值时用 log-y从 4.7 到 1.6 的有界损失用线性更可读图例遮住关注区域在右端直接标注线label_ends图例是查表工具一图塞太多曲线只画支撑主张的 4 条其余放附录表格基线用了调色板色基线与随机水平用灰BASELINE——彩色只属于被比较的对象曲线 x 范围不同且无说明说明某条为何提前停止发散、超出预算模板figs/loss_curve.py读取orx logs导出的 tidy CSVvariant,seed,step,value先用np.interp在各种子共同覆盖的 step 范围内插值跨公共范围避免给提前停止的运行编造平尾巴再band()绘制均值与 95% 色带基线以BASELINE灰渲染最后label_ends直接在曲线右端标注variant (n...)并调用si_ticks(ax, x)把 x 轴格式化为人类可读的 token 数。完整的 curves.md 模板 可直接复制运行。八、Scaling Laws三参数幂律、α 的区间与诚实的推scaling 图是实测运行的 log-log 散点加拟合幂律。它的全部价值在拟合所以拟合必须站得住log 轴上四点连成的直线怎么画都像真的无论它有没有意义。拟合领域通用的形式。对带地板floor的指标——loss、error——两参数幂律L A·N^(-α)在大 N 处是错的因为它趋向 0 而真实 loss 不会。拟合三参数形式L(N) E A · N^(-α)E是不可约损失数据熵、贝叶斯误差。强制E 0会弯折拟合、压平α——而那正是你要报告的参数。要同时拟合E且在L 上拟合误差而不是log(L − E)后者被最贴近地板的那些运行主导。若拟合出的E恰好是 0 或min(L)说明这些运行约束不了地板如实说明而不是把边界值当测量值报告。α要带区间——对运行做 bootstrap 即可——并写进图里而不是只写进正文。没有不确定性的 scaling 指数等于请审稿人问它来自几个点。什么该进拟合只进单一 regime欠训练、warmup 受限、撞上其他瓶颈的运行是另一条律可以画出但排除出拟合并在图注说明哪些点被拟合至少 4 个点、理想上跨越一个数量级以上少于 4 点或全在 3 倍以内的是趋势线而非scaling law要如此标注可比运行同数据、同 tokenizer、同评测——静默比较两个评测集的 scaling 图是看着正常实则破碎的图。外推必须看起来像外推。如果图的卖点是预测未运行规模拟合线在拟合范围内画实线、超出部分画虚线并给外推区域加阴影。一条实线冲出图右缘就是在没有测量的地方宣称测量。陷阱速查陷阱修复刻度读作10^8、10^910 的幂适合网格但标注成100M、1Bsi_ticks画了拟合线却藏起残差主面板下加残差条——那里的弯曲意味着形式错了不区分拟合/未拟合点拟合点实心、排除点空心并在图注说明双对数但只标了一个对数轴在此是惯例仍要写出单位α只出现在图注把拟合方程打印进面板——它才是结果不同模型族同一个颜色一族一种标记形状各族定律可能不同模板figs/scaling.py的fit_power_law用扫描 α 对每个固定 α 做线性最小二乘精确求解L E A·N^(-α)无需非线性优化器且拒绝负地板/负振幅的退化拟合bootstrap_alpha对运行重采样 200 次给出 α 的 2.5–97.5 百分位区间。主面板用figure_grid(nrows2, ncols1, widthTEXT, ratio0.62, sharexTrue, height_ratios[3,1])实测范围实线、外推到PREDICT_TO虚线加axvspan阴影残差子面板画百分比残差面板内文本打印L E A·N^-α与 α 区间、拟合运行数。完整代码见 scaling.md。九、基准对比与消融条形承诺零起点消融画差值两类看似相近、却需要不同图形的问题比较性质使用原因多个方法 × 多个基准分数从零起测分组柱状图评测论文的头图轴从零起时长度是诚实的编码分组让读者可跨基准扫视一个方法单一指标、差异相对种子噪声很小差值点须图dot-and-whisker on the difference位置编码数值轴可只覆盖有趣区间而不撒谎底下的规则柱长是一句轴从零开始的承诺。截断柱轴让 0.4 分差距显得决定性是 ML 中最常见的不诚实图。这是反对截断不是反对柱状图——accuracy、passk、胜率、计数都合法地从零开始柱是它们的正确标记。分组柱状图要点色调方法族明度变体。未调参的基线模型用灰先前工作一种色调你的工作一种色调族内由浅到深样式模块的family()。读者不读图例就能区分他们的和我们的。七个任意颜色传达不了任何信息。每组内方法顺序完全一致并与图例顺序一致。读者靠跨组扫视同一方法的柱位读图逐组重排序会摧毁这一点。给每条柱标注数值。这顺带让图承担结果表的职责引用数字的读者不必眯眼看轴。这是唯一允许字号低于 7pt 刻度字号、下探到 5pt 地板的地方——标注与柱高冗余看不清也能从轴恢复数值。全宽大约 5pt若柱太密标签相撞那是要删方法或拆图而不是再缩字号。基准组刻意排序——按难度、按规模或对齐结果表。字母序是浪费机会。图例浮在绘图区上时加框放在柱最短处。house style 默认无框那是在图例外时浮在数据上的图例需要不透明底否则会读成图表的一部分。分组图约 6 方法 × 6 组封顶再大就用表格。消融画差值。主张这个组件重要时画variant − baseline、零点画线、按效应排序。读者一眼看到符号、大小和区间是否跨零——这就是全部问题。要画差值的区间diff_ci两个变体各自区间重叠并不意味着差值不可区分于零——这是广泛重犯的错误。若某变体的差值区间跨零诚实的读法是在该种子数下无可检测效应。每个变体只有一种子时没有区间图注写 single seed不要画出暗示有区间的须。何时改用表格读者需要精确数值、变体超过约 8 个、或差异在噪声内时booktabs表格胜过任何图表格格式见 orx-paper 模块。陷阱速查陷阱修复截断 y 轴的柱状图从零开始或改差值点图每个方法一种色相灰基线、每族一色相、族内明度方法顺序逐组变化固定顺序对齐图例含义不明的误差棒写明5 个种子上的 95% CI。SD、SEM、CI 相差巨大旋转 45° 刻度标签水平点图配左对齐名称或加宽图Ours 无论分数都放最前诚实排序输掉子集也是结果柱标签相撞减少方法或拆图——不是更小字号两个模板benchmarks.py分组柱状图benchmark,method,scoreCSVwidthWIDE, ratio0.28每条柱bar_label标到 5pty 上限由数据推导取整、绝不全硬编码与 ablation.py差值点须图按效应升序排序使最优在上高亮变体用PALETTE[blue]差值带号标注打印 n 提醒写入图注。十、Pareto 权衡前沿前沿是主张运行是证据用于方法有一个旋钮、沿曲线而非到一点移动的情形。此时报告每方法一个工作点只是把旋钮选择伪装成结果换一个 β排名就翻转。前沿才是诚实的对象也是图本身。绘制每条运行为淡色标记再用pareto_front样式模块把每方法非支配点连成实线。读者要比较的是某方法的前沿是否在范围内整体位于另一条的上方偏左——而不是某点是否胜过某点。隐藏被支配的运行会更干净却是更差的图散点正是展示方法不稳定、或一半设置被浪费的地方。前沿线是导引线不是插值——你没有测量两个设置之间的点离散旋钮下它们甚至不可达必要时在图注说明。让好角显而易见。一轴越低越好、另一轴越高越好的图经常被读反。在两个轴标签里都写明方向——KL divergence (lower is better)——永远有效且零成本。数据允许时加个小 better ↖ 箭头但只在胜角确实空着、且图的卖点不是你的方法到达胜角时使用那通常不空。绘图区拥挤时给好/坏区域着色更好ax.axhspan/axvspan或以极低 alpha 在数据后做淡对角线洗色——背景承载方向、不与标记抢空间、也不会碰撞。类成本轴FLOPs、延迟、参数、token通常用 log线性成本轴会压扁廉价端——而有趣的权衡恰好住在那里。扫描预算是结果的一部分。扫 12 个设置的方法看起来前沿更好只因为它有更多机会非支配。在图例或图注中写明每方法的设置数并给各方法可比预算——这是权衡图在无人说谎的情况下最常奉承作者自己的方式。编码原则形状与色调都编码方法刻意冗余使图在灰度和色盲下都成立仅在设置的效应本身是故事时用颜色按旋钮值编码如β 控制策略漂移多远每值一个图例条目超过约六个就变成没人读的查表——直接标注承载论证的两三个设置其余移出图例形状编码方法 明度编码有序旋钮是好配对标记区分方法单色相由浅到深family()排列设置两个通道两个变量读起来干净。三个通道形状色调colorbar 编码两个变量不行。陷阱速查陷阱修复按扫描顺序连点连前沿不连运行索引只画前沿被支配运行淡化画出散布本身是结果扫描预算不等且不比较写明每方法 n对齐预算两轴都不说哪边更好胜角箭头或写进标签跨数量级的成本用线性轴成本轴用 log每个超参值一个图例条目只直接标注重要的几个前沿前先把种子压成均值前沿对设置取设置内展示种子散布模板figs/pareto.pymethod,setting,seed,kl,rewardCSVMETHODS显式声明形状色调双重编码所有运行alpha0.35淡色散点pareto_front(kl, reward, minimize_xTrue, maximize_yTrue)连前沿标签写method (n settings)两轴标签写明 lower/higher is better。见 pareto.md。十一、热图、扫描与混淆矩阵色图是决定不是默认热图用颜色编码数值而颜色是读者最不精确的通道换来整格模式的整体识别代价是无法精确比较两个相邻格。当网格的形状是发现时才用它。3×4 网格不是热图——那是四条各带三个点的线线图能让读者从轴上读值而不是从色带上猜。大约 5×5 及以上、或两轴真正对称任意规模的混淆/相关矩阵时再考虑热图。色图是决定不是默认数据是使用原因有自然低端的量loss、accuracy、countviridisSEQUENTIAL感知均匀等色步等值步且灰度下存活有符号差值、相关、对基线 deltaRdBu_rDIVERGING极限关于零对称中点色必须落在零上否则符号不可读任何情况绝不jet、rainbow、hsv它们有任意值处的亮带发明数据没有的边界发散色图要自己设限——vmin-max|x|、vmaxmax|x|。让 matplotlib 自动缩放会把中性色放在数据中点而不是零图于是宣称了并不存在的符号变化。colorbar 是一个轴。像标 x 轴一样标注量与单位无标签的 colorbar 等于无标签的轴。保持与图同高多个面板共享尺度时给一个共享 colorbar 而非各一个——分开的 colorbar 诱导读者比较不在同一尺度上的面板。混淆矩阵归一化并说明方式类别不平衡下原始计数会让最大类看起来像模型全部行为按行归一化给出每真类召回率按列给出精确率——图注写明是哪个注释单元格约 12×12 以内数字放得下更大就弃注释交给 colorbar类别有意义排序按频率、语义分组或对齐要比较的矩阵字母序会打散常是发现的块结构保持方形aspectequal——拉伸的混淆矩阵读起来像类别重要性不同。陷阱速查陷阱修复单元格相互平滑interpolationnearest——热图不是图像扫描轴标0,1,2标真实值log 间距轴注明 log深色格上注释不可见按亮度逐格选文字颜色annotate_matrix最优格留给读者找勾边或标记它NaN 渲染成最低色失败运行给显式颜色并说明含义两面板、两个自动缩放的 colorbar一个共享归一化、一个 colorbar模板figs/sweep.pylr,batch_size,lossCSV发散/OOM 运行的 loss 留空 → 存为 NaNmpl.colormaps[SEQUENTIAL].with_extremes(badMUTED)把缺失格渲染为MUTED灰而非最差颜色annotate_matrix逐格按亮度选黑/白文字np.nanargmin找到最优格并用白色Rectangle勾边。混淆矩阵模板同样按行归一化support counts.sum(axis1)零支持类别用 NaN 而非 0 召回率aspectequal保持方形图注写明按行归一化并给出各类 support——三个样本上的 1.00 与三千个上的 1.00 不是同一结果。见 matrix.md。十二、方法与架构示意图TikZ矢量、相对定位、单一强调示意图用 TikZ 画它是矢量、文字由论文同一引擎排版、可在 git 中 diff审稿人把 loss 项挪一下是一行编辑而非重画。分工保持干净TikZ 画示意图matplotlib 画数据。用 pgfplots 画柱状图是维护第二个绘图栈没有收益。无论谁画示意图必须真正矢量PDF 而非画布 PNG并按印刷宽度构建——与本节所有图相同的两条规则。TikZ 是推荐而非惯例多数 ML 论文的示意图从绘图工具导出图示性强的图选绘图工具盒子箭头符号多数方法图选 TikZ。从共享脚手架构建。assets/orx-tikz-preamble.tex 定义了block、data、arrow、stage等样式且颜色与绘图样式模块共用同一套 Okabe-Ito 值orxblue#0072B2等保证同一篇论文里示意图与数据图对ours 是什么颜色达成一致。其路径相对本模块的 SKILL.md在任何目录执行mkdir -p figs orx skill figures/assets/orx-tikz-preamble.tex figs/method.tex工作树中的.tex就地编译figs/method.tex在旁生成figs/method.pdf可直接\includegraphics编译与引擎选择见 orx-paper 模块。永远相对定位。用positioning库——rightof encoder、below4mm of loss——绝不用绝对坐标。绝对坐标图每次盒子名称变长就要重建相对定位图自动重排。这是评审后会更新与不会更新的图的区别。一个强调、一个方向。贡献元素是唯一被强调的ours样式蓝色描边浅蓝填充其余都是中性block或muted。五处着色的图等于没告诉读者哪个是新的。流程单一方向从左到右或从上到下回折箭头要有意地不同backflow——梯度、stop-gradient、teacher 信号而不是因为布局没地方了。形状承载类型矩形计算梯形data张量与数据集虚线框stage阶段分组。尺寸与scale陷阱。\begin{tikzpicture}[scale0.8]只缩放坐标、不缩放节点文字盒子逼近等大标签直到相撞transform shape连文字一起缩——然后文字比图注还小正是被明令禁止的事。按印刷宽度构建太宽就缩短标签、堆叠布局或删掉一个阶段不要缩小也不要靠width\linewidth把画宽的图缩小——这就是整条规则要阻止的缩放拯救法。引入前检查编译出 PDF 的实际宽度。标注边缘。箭头上的张量形状、loss、维度edgelbl是最便宜的阅读性提升能跟着形状走的读者无需正文即可重建方法。一条边上的$B\times T\times d$顶替正文第 3 节的一句话。陷阱速查陷阱修复scale0.7让它装下按目标宽度重建缩短标签绝对\node at (3.4, -1.2)positioningrightof prev图画内放标题节点图注是标题删掉每个盒子不同色贡献一个强调色其余中性\tikzexternalize、pgfplots 外部化、minted不可用——文档以-no-shell-escape编译无理由交叉的箭头重排节点交叉应当有意义图字体比图注小节点\footnotesize边标签\scriptsize再低不允许模板figs/method.tex共享脚手架后接tikzpicture[orx]data输入输出$B\times T$、$B\times T\times V$、block主干、ours贡献、flow正向边、backflow回传梯度、stage虚线框fit(enc)(mod)(dec)加stagelbl标注阶段名配合上文figure[t]的\includegraphics[width\linewidth]引入。要内联进论文把\usepackage{tikz}、\usetikzlibrary{...}及\definecolor/\tikzset块移入论文前言再\input图片主体。漏掉库会导致论文编译失败trapezium、Stealth、fit、on background layer各来自其中一个库。不要把\familydefault带过去——无衬线字面由orx、edgelbl、stagelbl样式携带随图走、不触碰其他任何东西。完整模板见 diagram.md。十三、交付前的自动审计save()的审计行是验收标准save()在写文件后对活画布做审计逐条检查印刷宽度是否为COLUMN/TEXT/WIDE之一见 orx_figstyle.py 的 3.25/5.5/6.75 英寸定义Type 42 字体嵌入pdf.fonttype42arXiv 拒绝 Type 3缺失则报 use_style() was never called多余的轴标题ax.get_title()非空即报与图注重复缺失的轴标签跳过共享轴——共享轴只在一个面板标注一次——和类别刻度轴类别刻度自称轴标签不需要轴标题log 轴必为定量、必须有标签5pt 地板以下文字文字与文字重叠对Bbox求交重叠超过容差即报含文字名文字跑出画布会被裁切排除 locator 越过视界限的刻度标签等特殊情况。审计输出格式为FIGURE AUDIT stem: N problem(s) — fix before using与逐条问题全部通过则figure audit stem: clean。clean是标准任何一条审计发现都是要修的缺陷不是记下并跳过的警告。输出通过 stderr 打印而非抛出异常硬失败会在分析中途丢掉图而静默通过才是不可发表图进入论文的通道save 实现。审计中有一条不归你修若报告本机没有出版级字体_resolved_font为 None 或以 DejaVu 开头交付时说明即可不要自行安装字体——那是环境变更应先征询。关于审计其他条目的常见处理放在参考线或数据点上的标签是重叠的常见来源某些数据范围正好压住刻度标签——移开它或给它backgroundcolorwhite让它遮住所盖内容。save()不裁剪无bbox_inchestight裁剪到内容会改变物理宽度破坏按最终尺寸构建。十四、交付前的最终自检清单打开 PDF按印刷尺寸阅读。屏幕上 100% 都读不清的刻度标签印在纸上同样读不清。每个轴都有标签带单位没有游离的ax.set_title。图注的主张不依赖正文就可见于图。不确定性已展示n 已声明。没有无法解释的序列没有为被裁掉的元素保留图例条目。脚本从零重跑能复现同一文件生成脚本与输出同目录。面板均有字母标签、共享轴合并标注、整图一个图例、按论证顺序排列panel_labels/figure_grid 实现。十五、与 OpenResearch 证据链配合日志→数据→图的闭环本模块并非孤立技巧而是 OpenResearch研究代理证据链的一环数字只从orx logs来。运行终端输出被实时捕获并持久化用orx logs runId--head、--bytes、--range控制读取窗口读回最终指标与摘要再导出 CSV 供绘图模板消费。日志须识别变体与生效配置、包含最终指标与紧凑摘要、长运行保留可恢复轨迹——报告前逐项验证见 orx-evidence 模块。图是 artifacts 的一等公民。报告/聊天场景下图、脚本与数据按主题组织进 artifacts 目录如transformer-sweep/figures/orx_figstyle.py与生成脚本同放引用用file pathartifacts/.../... /完整嵌套路径报告内用相对链接见 orx-reports 模块。论文场景则统一落figs/、引用figs/*.pdf。可复现性随会话延续。样式模块被 vendor 到图脚本旁、生成脚本与其输出同目录、uv run负责依赖环境——四者共同保证会话结束后图仍可复现这也是本模块所有工程细节的最终目的让一张经得起审稿的图在审稿人要求再来一个种子时能在一行命令内重生。赞分享人工智能AI Agent深度研究自主智能体Agent 编排【免费下载链接】OpenResearchTurn your coding agents into research agents项目地址https://gitcode.com/GitHub_Trending/op/OpenResearch点击查看免费下载相关推荐OpenResearch 方法图与架构图绘制指南用 TikZ 画出可审稿、可维护的论文示意图OpenResearch 方法图与架构图绘制指南用 TikZ 画出可审稿、可维护的论文示意图 导读 在论文写作中方法图method diagram回答的人工智能AI Agent深度研究自主智能体Agent 编排OpenResearch orx-create 实战指南从 orx up 建项目到 orx create-experiment 构建实验树OpenResearch orx create 实战指南从 orx up 建项目到 orx create experiment 构建实验树 导读 orx cr人工智能AI Agent深度研究自主智能体Agent 编排OpenResearch 后端实战用 orx exp run --backend openresearch 按次计费拉起临时 GPU/CPU 沙箱OpenResearch 后端实战用 orx exp run backend openresearch 按次计费拉起临时 GPU/CPU 沙箱 本指南讲解 O人工智能AI Agent深度研究自主智能体Agent 编排创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价