
做科研画图的人早晚都会撞上同一个坎一张图里要放四个面板或者一个 X 轴要对应两条量纲完全不同的 Y 轴又或者你想在一张主图旁边插一个小尺寸的局部放大图。单图层画图谁都会双击数据列选个图型就出来了但一旦进入多图层的领域很多人就开始乱点按钮最后得到一堆重叠在一起、坐标轴对不齐、导出还带白边的图。这篇就围绕 Origin 的多图层绘制方法展开把我这几年画论文插图、做汇报图、帮别人改图时踩过的坑和总结出来的做法一次讲透。如果你刚开始用 Origin这篇能让你少走大概一半的弯路如果你已经用了两三年但画图还是靠手动拖那里面关于图层坐标计算、坐标轴关联、模板固化的部分应该更对你有用。先说明一点市面上叫 Origin 的东西不止一个搜的时候容易撞上同名的手游、浏览器扩展、驱动工具软件还有代码托管里的分支名和跨域配置里的字段名都不是一回事。本文只讲科研绘图软件 OriginOriginLab 出品的多图层绘制版本以 Origin 2018 之后的界面为主个别菜单在 2016 或 9.x 上位置会有出入我会标出来。1. 多图层到底是什么先把 Origin 的图层模型搞清楚1.1 Page、Layer、Plot 三层结构以及为什么必须分层Origin 的 Graph 窗口不是一个平面画布它是个三层嵌套的结构。最外面是Page页面你可以理解成一张 A4 纸它有物理尺寸默认单位是 inch 或 cm导出、打印、排版都是以它为准。Page 里面可以放若干个Layer图层每个 Layer 是一个独立的坐标系容器自带 X 轴、Y 轴、背景、边框、标题以及它自己的绘图区大小和位置。Layer 里面才是真正的Plot数据曲线一条曲线、一组柱、一个散点集合都叫一个 Plot。为什么要设计成这样因为一个坐标系和一张图在科研场景里根本不是一回事。做双 Y 轴的时候两条曲线的数值范围差了三个数量级硬塞进同一个 Y 轴小的那条就贴着 X 轴变成一条直线什么信息都看不出来。做多面板对比的时候四个子图的坐标范围各不相同共享一个坐标系也没法画。Layer 存在的意义就是让每个坐标系有自己的刻度范围、自己的轴标题、自己的图例而 Page 负责把它们组织到一张纸上。从结构上讲Page 只关心这张纸上放几个框、分别放在哪Layer 只关心我这个框里的数据怎么显示。搞清楚这一层后面所有的操作逻辑就顺了改小图在页面上的位置是 Layer 的 Size/Position 问题改刻度范围是 Axis 的问题改曲线上色是 Plot 的问题。很多人卡住就是因为把这三件事混在一起找菜单。提示判断自己当前在操作哪一层看你选中了什么。选中曲线按 Delete删的是 Plot选中整个框按 Delete删的是 Layer点到页面空白处改的就是 Page。1.2 三种典型的多图层需求对应三种不同做法实际工作中多图层这三个字背后其实是三种完全不同的需求做法也完全不一样先分清楚能省很多事。第一种是多面板并置也就是常见的 2×2、1×3、2×3 排布每个面板是一张独立的子图坐标轴、数据、图例都独立。这种需求本质上是把多个图摆到一张纸上最合适的做法是先把每张子图单独画好、调好格式再用合并功能一次性拼版。第二种是同位置叠加最典型的就是双 Y 轴左右两个 Y 轴或者上面一个小的残差图、下面一个主图这种主从结构。这种需求的特征是图层之间有坐标关联——X 轴要同步或者一个轴的刻度要跟着另一个轴走。做法上只能是在同一个 Graph 窗口里加图层并且一定要设置坐标轴关联否则调节一个轴的范围另一个不动图就散架了。第三种是同坐标系多套数据比如同一个 XY 坐标系里画三组不同条件下的曲线再比如瀑布图那种多条曲线沿一个方向平移排开。注意这种严格来说不算多图层用同一个 Layer 加多条 Plot 就够了。很多新手一看到多条曲线就急着加图层结果图例管理、刻度设置全部翻倍得不偿失。判断标准很简单如果几套数据共用同一套刻度、同一条轴线那就是一个 Layer 加多个 Plot如果刻度范围不同、或者需要独立的轴标题才拆图层。1.3 常见误区独立图层、共享轴与看不见的新图层有三个误区几乎是每个人都会踩一次的。第一点了 Add Layer 却没反应。Origin 工具栏上那个带加号的按钮默认行为是在原图层的正上方复制一个同样大小、同样位置的图层。你点完什么都看不见以为软件卡了其实新图层严丝合缝地盖在老图层上只有去图层管理里把它的位置挪开才能看到。这是新手最容易懵的一步。第二以为加了图层坐标轴就自动对齐了。合并出来的图层默认各自独立你把 X 轴范围从 0–10 改成 0–20隔壁那个还是 0–10两张图就错位了。必须手动做坐标轴关联或者干脆用共享轴的精简方案图层面板之间只保留最外侧的轴。第三图层叠得越多越好看。我见过有人为了做一个双 Y 轴图硬生生叠了四个图层其中两个只是用来放文本框和图例。图层多了以后导出时的边框、背景、空白裁剪都会出问题而且后续改数据要逐个图层找。经验是能用一个图层解决的问题不要用两个图例和文本说明优先用页面级的文本对象而不是专门开一个图层去装。2. 四条创建多图层的实操路线按场景对号入座2.1 路线一从零开始用 Add Layer 系列按钮如果数据还没画成图或者你打算在一个窗口里从零搭结构用工具栏的 Add Layer 系列最直接。Graph 窗口激活时工具栏上会有一组图层按钮点主按钮是加一个同样的图层点旁边的小三角会展开菜单里面有几个方向选项Right Y右侧加 Y 轴图层、Left Y、Top X上方加 X 轴图层、Bottom X以及一个自由位置的选项。选方向加图层的好处是 Origin 会自动帮你算位置加右 Y 图层新图层会横向压缩原图层并并排放在右边加上方 X 图层会纵向分栏。用这个方式做双 Y 轴最省事一步到位位置也大致合理剩下的只是微调和设置关联。如果选择了自由位置的那种新图层会重叠在原位置上这时候不要慌去图层管理里改它的 Size/Position 就行。我个人的习惯是永远不用重叠式的 Add Layer要么选方向让它自动排要么先重叠再立刻去图层管理里设定坐标绝不拖到后面忘了这回事。注意加了新图层之后图例不会自动更新成包含所有图层的形式。原图例只属于原图层新图层的曲线不会出现在里面。需要手动更新图例或者新建图例对象这一点后面第 4 章会讲。2.2 路线二已有图合并Merge Graph Windows 的参数逐个说清科研里最常用的其实是这条路线四组实验数据先分别画成四张独立的图把每一张的坐标轴、刻度、颜色、字体都调到满意最后一步合并成 2×2。好处是每张子图在独立状态下调格式最省心不容易互相干扰。合并的入口在菜单里不同版本在 Graph 菜单或 Tools 菜单下名字叫 Merge Graph Windows 或 Merge弹出的对话框里有几组关键参数一定要看懂参数作用我的常用取值Number of Rows / Columns排布行数和列数按子图数量定2×2 最常用Gap Between Layers图层之间的水平/垂直间距水平 4%–6%垂直 6%–8%Layer Area 或 Layer Size每个图层的宽高由行数列数自动算也可手动指定Keep Source是否保留原图窗口勾选方便后续回改Margin Control页面边距处理方式选自动或固定边距间距为什么要往上留多一点因为多面板图通常只有最下面一行保留 X 轴标题上面几行只需要刻度数字视觉上纵向需要更多呼吸空间而列与列之间主要是 Y 轴标题的位置4%–6% 通常够。如果你的 Y 轴标题特别长比如单位体积比表面积 (m²/g)这种水平间距要往 7%–8% 加否则两列标题会打架。合并完成后还有一步必做精简重复的坐标轴。合并出来的每个图层都是完整的四边框轴中间那几条轴线会显得很乱。常规处理方式是把内侧的轴标题删掉、刻度标签关掉只留最外侧一圈。这一步不做图看起来就像草稿。2.3 路线三图层管理中枢Layer Management 与 Plot Setup 配合图层管理对话框是我用得最多的一个面板。打开方式有几个最稳的是在 Graph 窗口激活状态下点工具栏上的图层管理图标或者在图上右键找到 Layer Management。它里面的核心是一棵图层树列出当前页面上所有图层你可以在这里做这些事切换当前激活图层图上被激活的图层边框是深色未激活的是灰色显示/隐藏某个图层有小眼睛图标做汇报动画或者分步展示时特别好用调整图层的前后顺序修改 Size/Position指定单位查看哪些图层之间有关联关系。和它配合使用的是Plot Setup在图上右键就能找到。这个对话框解决的是一个非常高频的需求往已经画好的图里塞新数据。它分上下两部分上面是数据源列表下面是目标图层和曲线设置。你可以精确地指定把 B 列数据加到第 2 个图层作为散点而不是重新画一遍图。再往下还有Layer Contents对话框管的是这个图层里到底有哪些曲线可以增删、可以调整绘制顺序、可以改线型颜色。三个工具的分工是Plot Setup 负责把外部数据放进来Layer Contents 负责管理已有曲线Layer Management 负责管理图层本身。2.4 路线四用模板和 Theme 固化布局避免重复劳动如果你要连续画十几张结构一样的图前面三条路线每张都手动来一遍那纯属自虐。这时候要用模板和 Theme 两层复用机制。Theme主题管的是样式颜色、线宽、字体、字号、坐标轴样式、刻度朝向、图例边框。调好一张图之后在图上右键保存为 Theme之后新画的图直接套用一秒钟出一张风格统一的图。做期刊投稿图的时候我通常会先花二十分钟做一个符合期刊要求的 Theme然后所有图都套它最后统一导出能省掉大量返工。Template模板管的是结构页面尺寸、图层数量、每个图层的位置和大小、坐标轴范围这些。保存方式是存成模板文件下次直接从这个模板新建。多面板图尤其值得存模板——2×2 的四个框、间距、页边距全部固定下来之后换数据就行。两者分工要说清楚Theme 一般不带图层布局信息模板才带。所以结构复用靠模板样式复用靠 Theme这句话我建议直接记住。3. 图层之间的联动坐标轴关联、对齐与等距3.1 Link Axes Scales 的三种模式与选择逻辑多图层最容易出错的地方就是坐标轴没关联。你在主图上把 X 轴从 0–10 改成 0–20上面的残差图还停在 0–10两张图的曲线位置就对不上了审稿人一眼就能看出来。关联的入口是在图表区域右键找到 Link Axes Scales有些版本在 Format 菜单里。对话框里会给每个轴一组选项核心是三种模式None不关联两个轴各管各的。只有当你确实需要两个轴独立变化时才用。Straight (1 to 1)一对一线性关联。主图 X 轴改范围从图 X 轴跟着改比例一致。做上下堆叠的共享 X 轴图、做双 X 轴的时候都用这个。Custom自定义线性关系可以设斜率和截距。这个功能被严重低估了——它本质上是给你一个单位换算轴。比如主轴的 X 是时间秒你想在顶部显示另一个相关量只要两者是线性关系用 Custom 填上斜率和截距顶部轴的刻度就自动跟着主轴的缩放同步变化完全不用手动改。做温度单位换算、浓度换算这类图特别省事。还有一个常被忽略的细节关联是有方向的。A 关联到 B 之后改 B 的范围 A 会跟着变改 A 的范围 B 不一定跟着动。设置的时候注意选对跟随者和被跟随者否则你会觉得关联了但没用。3.2 双 Y 轴图层Right Y 的建立、刻度独立与图例处理双 Y 轴是多图层里最经典的应用流程走一遍先画好主图左 Y 轴。然后加一个右 Y 图层Origin 会自动调整两个图层的宽度并排布。接着把第二条数据加到新图层上这一步用 Plot Setup 最干净不要让 Origin 自动分配。新图层的 Y 轴默认在右边刻度范围是自动的需要手动设成你要的范围。最后设置坐标轴关联X 轴选 StraightY 轴选 None因为两条曲线的量纲不同绝不能关联。这里有几个实测经验。第一并排之后两个图层的绘图区宽度会变窄如果原来的 X 轴刻度标签比较挤要重新调整刻度间隔或者字体大小。第二右 Y 轴的刻度标签不要设置成和左轴一样的颜色容易混淆常规做法是让轴的颜色跟对应的曲线一致或者至少把轴标题颜色改成对应的。第三也是最容易出错的一点双 Y 轴图的图例必须手动处理默认图例只归主图层管右轴那条曲线不会出现在图例里。做法是在图例上右键更新让图例包含所有图层或者手动把 \l(n) 标记补进去。还有一种更紧凑的替代方案单图层双 Y 轴。Origin 允许在同一个图层里开右侧的 Y 轴也就是视觉上有两根 Y 轴但只有一个坐标系容器。这种做法位置永远不会错位缺点是两根轴的数据共用绘图区宽度某些情况下曲线会有遮挡。如果你不打算做复杂的间距微调单图层双 Y 轴其实更省心。3.3 对齐与等距Size/Position 的单位、计算与实操参数图层位置和大小在图层管理里设置单位有好几种可选% of Page相对整页、% of Layer Area相对所选区域做嵌套小图时用、inch / cm / mm绝对物理尺寸投稿时最保险、pixel做屏幕展示用。日常排版我用 % of Page因为无论页面尺寸怎么改相对比例不变。关于等距排布给一个可复现的计算过程。假设页宽 100%、页高 100%你要做 2×2 四个面板左右各留 9% 的边距留给 Y 轴标题和刻度标签可用宽度 82%两列之间留 6% 的间隙那么每列宽 (82 − 6) / 2 38%上下边距取 8%上面通常还要放个 (a)(b) 的标签中间留 8% 的纵向间隙可用高度 84%每行高 (84 − 8) / 2 38%。于是四个图层的位置分别是左上 (9, 46)、(47, 46)、(9, 8)、(47, 8)尺寸统一 38% × 38%。用这个坐标填进四个图层的 Size/Position出来的图一定是横平竖直的比手动拖准得多。注意手动拖图层边框看着差不多但四张图放大到 400% 一比一定会有 1–2 像素的差别。凡是投稿图位置一律用数值填不要拖。4. 细节打磨图例、刻度、字体与符号4.1 图例横向排列的两种可靠做法图例默认是竖直一列。当曲线只有两三条、而图又比较扁的时候竖直图例很占地方横向排一行既省空间又好看。这个需求看着小实际上问的人特别多我给出两种我实测可行的方法。第一种是手动编辑图例文本。先在图例上右键关闭自动更新否则每次改图数据它都会重置你的排版然后双击图例进入文本编辑状态把原本每行一个的标记合并到同一行。Origin 的图例标记是带编号的占位符默认每个占位符单独占一行你要做的是删掉它们之间的换行用空格隔开让它们在同一个段落里。不同版本对换行的处理略有差别2018 之后在文本编辑状态下直接退格把两行并到一行一般都能成。第二种是拆成多个图例对象。如果手动合并总是错位就用这个笨办法复制图例每个图例只保留一条曲线的标记把边框全关掉然后把几个图例对象并排摆到同一水平线上。图层位置对齐的方法和第 3.3 节一样用数值控制直接拖准。提示横向图例的文字长度要控制。三条曲线如果每条名字都有二十个字横排一定会溢出图外这时候还是老实竖排或者用简写加正文说明。4.2 刻度范围、小数位数与横纵比例双击坐标轴打开刻度设置这里有三件事要一起做。刻度范围要按数据的实际分布来定不要用自动值。自动范围的毛病是它总留一点多余的空白导致曲线没有铺满绘图区图看起来小气。常规做法是把范围收紧到数据的最小最大值或者人为取整比如 0.37–0.62 收紧成 0.35–0.65读图更方便。小数位数在刻度标签那一栏设置。这里有个坑改了小数位数之后如果刻度间隔不合适会出现标签重复或者相邻标签数值一样的情况。正确顺序是先定范围再定主要刻度间隔最后定小数位数。比如范围 0–1、主刻度间隔 0.25就配两位小数间隔 0.1 配一位小数就够。横纵比例是审稿人最爱挑的点。Origin 默认按绘图区形状自动缩放两个轴你改了图层宽度两个轴的比例关系就变了原本 45 度的一条趋势线可能变成 30 度视觉上完全变了味。要做等比例图比如晶体结构、相图、圆形分布图得手动把 X 轴和 Y 轴的单位长度对齐先看图层物理尺寸在图层属性里读 inch 值再让 X 轴范围和 Y 轴范围之比等于两个方向尺寸之比。这个计算不复杂但一定要做尤其是几何类数据。4.3 字体默认值、中文字体与符号标注改默认字体的价值在于省事。Origin 默认字体是 Arial字号偏小而多数期刊要求 Arial 8–10 pt 或者 Times New Roman。与其每张图手改不如在软件的选项设置里把图形文本的默认字体、字号、标题字体一次性改掉之后新建的图直接就是合规格的。这个设置通常在 Tools 的选项里找到文本字体那一组把坐标轴标签、轴标题、图例、文本对象四项分别设好。中文标签要注意字体选择宋体、黑体这类中文字体对英文数字的支持一般混排时数字会显得怪。我的做法是标题用中文字体保证汉字正常刻度和单位用 Arial保证数字工整两者字号保持一致视觉上基本看不出差异。符号上加横线比如表示平均值的带上划线符号有两条路。简单符号直接在文本里用带组合字符的方式拼或者从符号表里选现成的带横线字符复杂公式就切到 LaTeX 模式——在文本编辑状态下按快捷键把输入模式切成 LaTeX然后写标准的数学语法即可第一次用需要在选项里指定本机的 LaTeX 环境路径。这两条路我都用过简单符号走前者公式多的图直接上 LaTeX一次配置长期受益。4.4 往已有图形里加数据Plot Setup 与 Layer Contents这张图已经画完了审稿人又让你补一组对照数据直接重画是最傻的做法。正确姿势有两种。一种是把数据列直接拖到图上。Origin 支持从工作表把列拖进 Graph 窗口它会自动判断加到哪个图层、用什么图型。这个方式快但可控性差容易加错位置。另一种是Plot Setup在图上右键打开上半部分选数据列下半部分指定目标图层、图型、以及是新建曲线还是加到已有曲线上。这个方式可控性最强特别是多图层的时候能一次把数据分派到不同图层是真正专业的做法。加完之后图例需要用更新功能刷一遍否则新曲线没名字。加进去的曲线颜色很可能和已有曲线撞色记得在 Layer Contents 里统一分配颜色和线型。5. 出图与复用导出、批量重绘与常见故障排查5.1 导出参数DPI、尺寸、多图层裁剪多图层图的导出比单图麻烦因为涉及导出哪一块区域。导出对话框里通常有页面和图层两种范围选项多面板图一定要选整页范围否则它只导出当前激活的那个图层。相关的几个参数参数建议值说明DPI投稿 600 以上屏幕展示 150–300线条图案类数据线宽小低 DPI 会虚格式TIFF / EPS / PDF矢量位图适合投稿矢量适合后续再编辑尺寸与页面尺寸一致期刊对图宽有硬性要求单栏/双栏线宽坐标轴 0.5–1.0 pt曲线 1.0–1.5 pt太细印出来会断太粗显得脏字号7–10 pt缩放到期刊版式后要能看清一个高频问题是导出后图上带一圈白边。原因通常是页面尺寸比图层实际占用的区域大或者页面边距设置过宽。解决办法是导出前在图层管理里核对最外侧图层的边缘位置必要时把页面尺寸收紧到刚好包住所有图层然后再导出。5.2 批量与复用模板、Theme 与批量绘图如果手上有几十条曲线每条都要画成结构一样的图手点会点到崩溃。两个方向可以走一是用软件自带的批量绘图功能指定数据源和模板让它自动生成一批图二是提前把模板和主题做扎实之后新数据只要套模板、换数据列剩下的全靠自动。顺带说一个容易被忽略的问题未激活状态下的水印。如果你用的是安装后没有完成授权激活的版本图上会带一个淡淡的水印文字导出后依然存在投稿一定会被发现。正式解法是通过官方渠道获取授权高校和科研院所一般都有面向师生的授权途径个人也可以申请学习版本。网上流传的那些所谓破解文件注册机之类我强烈不建议碰——来源不明的可执行文件本身就带风险而且版本升级、系统重装之后又要重新折腾一遍时间成本远高于正版的投入。5.3 多图层高频问题速查表下面这张表是我这几年被问得最多的问题按现象整理方便你对照排查。现象最可能的原因处理方式加图层后看不到新图层新图层与原图层完全重叠到图层管理里改 Size/Position 挪开改一个轴的刻度另一个不动未设置坐标轴关联设置关联模式为 Straight双 Y 轴图例只显示一条曲线图例只归属主图层更新图例或手动补标记合并后中间多出重复的轴标题每个图层保留了完整边框关掉内侧图层的轴标题和刻度标签柱状图叠在一起分不开同组柱子的间隙设为负值在绘图细节里调柱子间隙和偏移多条曲线挤在底部看不清量级差异过大拆成多图层做双 Y 轴或做偏移放大导出图带白边页面尺寸大于图层占用区域收紧页面尺寸或调整边距图上出现淡淡的水印文字软件处于未激活状态通过官方渠道完成授权中文标签显示为方块字体不支持中文文字对象单独指定中文字体打印或导出后线条断裂DPI 过低或线宽太细提高 DPI线宽不低于 0.5 pt还有一类问题比较隐蔽多图层图里某个图层的曲线在编辑状态看得见导出的文件里却没了。这通常是因为那个图层被设置成隐藏状态或者被其它图层完全遮挡。养成习惯导出前在图层管理里过一遍所有图层的可见性和前后顺序能避免绝大多数导出后图不对的意外。瀑布图这类图我顺便提一句因为不少人是通过它接触到多图层的。瀑布图的本质是把多条曲线沿一个方向平移排开用单图层配数据偏移功能就能做也可以用多图层做——区别在于多图层做的时候每一条曲线可以带自己的坐标轴和配色灵活度更高但图层数量一多管理成本陡增。我的建议是只是展示趋势对比用单图层偏移需要每条曲线有独立标注和独立轴才拆图层。最后分享一个我个人固化的习惯任何一张多图层图在开始排版之前先在纸上或者文本里把四个数字写下来——每个图层的左上角坐标和宽高全部用百分比算好再一次性填进软件。这样排出来的图无论以后页面尺寸怎么改、要加一个附录版本都不会错位。多图层这东西真正难的不是点哪个按钮而是在动手之前就想清楚每个框该放在哪、哪几个轴必须绑在一起。想清楚这两件事剩下的都是体力活。