论文配图规范:300dpi / 矢量图 / 色盲友好怎么落地

ScienceSoft 科研软件评论阅读模式

上个月一个师弟把论文投出去,两周后编辑回信,别的没说什么,就一句:图的分辨率不达标,请重新提供。

他把图发我看。300 dpi,没错啊——他在 Photoshop 新建文件的对话框里,明明白白写着 300。

我说你打开“图像大小”,看像素那一栏是多少。

1024 × 768。

他这张图在排版里占的是通栏位置,印出来大概 17 cm 宽。

17 cm 等于 6.7 英寸。1024 除以 6.7,等于 153 dpi。

那个“300”从头到尾就是个摆设。


这几年带过的学生里,卡在配图这一关的比卡在统计上的还多。原因也不是他们不认真——是“300 dpi”“矢量图”“色盲友好”这三个词,看起来简单,实际每一个都在某个不起眼的环节上埋了坑。

今天把这三个词拆开,说清楚它们到底在要求什么,以及在哪个软件、哪一步、怎么操作才算真的落地。


一、300 dpi:九成的人误解在这一步

先说结论:dpi 不是文件的属性

这是所有坑的源头。

dpi 描述的是“这张图在最终印刷尺寸下的像素密度”,它是一个关系值,不是一个属性值。

公式只有一条:

像素数 = dpi × 印刷尺寸(英寸)

所以“你这张图多少 dpi”这个问题,本身就缺了一半信息——你得配上一个“印多大”。

反过来算就很清楚了:

图的用途
印刷宽度
300 dpi 需要多少像素
半栏图
约 90 mm(3.54 in)
至少 1063 px
通栏 / 双栏图
约 180 mm(7.09 in)
至少 2127 px

Nature 官方给的口径是:单栏图的绝对宽度不少于 1040 像素,⁠双栏不少于 2080 像素⁠(不含周围白边)。Elsevier 给的是单栏至少 1063 像素、⁠整页宽 2244 像素。

两个数字对得上——因为都是从 300 dpi 反推过来的。

三种图,三个门槛

很多人以为“300 dpi 就是万能答案”。不是。期刊是按图的类型分档要求的,⁠这一点在投稿须知里写得很明白,但特别容易被跳过去。

Elsevier 的规则(Guide for Authors 原文):

  • 照片 / 灰度半色调图
    ⁠(显微镜图、凝胶图、Western blot):最低 300 dpi
  • 位图线条图
    ⁠(纯黑白像素的线稿):最低 1000 dpi
  • 线条 + 半色调的组合图
    ⁠(带标注的显微图、嵌了照片的曲线图):最低 500 dpi

为什么线条图要求最高?因为硬边最容易暴露采样问题。黑是黑、白是白的地方,任何一点插值都会显出锯齿,斜线和细笔画尤其明显。

Nature 的说法稍微不同,但方向一致:线条图、图表、示意图优先提供矢量格式(EPS 首选);⁠实在给不了矢量的,才用 1200 dpi⁠ 的位图。照片一律 TIFF,最低 300 dpi。

PLOS 给的是 300–600 dpi 区间,两头都提醒了:低于 300 会糊,高于 600 反而可能被系统压缩回去。另外文件体积卡在 10 MB。

所以“300 dpi”其实是个下限的泛称。真落到线条图这档,300 是不够的。

三个必踩的坑

坑一:在 Photoshop 的“图像大小”里把分辨率数字改成 300。

这个操作默认不勾“重定图像像素”——也就是只改了文件的元数据标签,像素总数一个没变。你以为升上去了,实际有效分辨率还是 153 dpi。

期刊的自动检查系统(Elsevier 叫 AQC,Artwork Quality Check)量的是像素数 ÷ 最终物理尺寸,⁠根本不看你文件头里那个数字。

坑二:用插值放大去救一张低分辨率的图。

PLOS 直接把这件事定性成数据完整性问题,而不是技术问题:⁠给图里补上原本不存在的像素,等于让软件替你造了没测过的数据。这在审稿里叫图像完整性问题,比分辨率不达标严重得多。

唯一的解法是回原软件重新导出。

坑三:整张图的分辨率,取决于最差的那块料。

一张 300 dpi 的 TIFF 里如果贴了一张 72 dpi 的截图,那张截图还是⁠ 72 dpi。PLOS 的原话就是这个意思:一张图的质量只等于它里面分辨率最低的那个元素。

这个坑最常见的来源:

  • 从 PPT 里复制粘贴过来的图
  • 从网页上右键另存的图
  • 用微信 / QQ 传过的图(默认压缩,dpi 会神不知鬼不觉地掉)
  • 在 Word 里“拖拽”或“粘贴”进去的图

怎么查一张图到底合不合格

三个数一算就够:

  1. 看像素:
    ⁠不是看 dpi 那一栏,是看像素数
  2. 量尺寸:
    ⁠这张图在排版里占多宽(毫米)
  3. 除一下:
    ⁠像素 ÷(毫米 ÷ 25.4)

写代码的一次就能算完:

``python from PIL import Image im = Image.open("fig1.tiff") w, h = im.size # 像素数,这才是真相 mm = 90 # 计划排版宽度(毫米) print(f"{w}px 放在 {mm}mm 宽时,有效分辨率 {w/(mm/25.4):.0f} dpi") ⁠``

不想写代码的,用 ImageJ / Fiji 打开,Image → Properties 里能直接看到像素尺寸。

还有一条 Nature 的老建议,听着土但极其管用:把图放进一个 90 mm 宽的文档里,用最终尺寸打印出来,纸上看一眼。

屏幕会骗人,纸不会。7 pt 的字在屏幕上还挺大,印出来可能是这样:看不太清。


二、矢量图:先分清“画出来的”和“拍出来的”

一句话判断法

  • 数据点连出来的曲线、柱状图、箱线图、示意图、流程图、通路图、化学结构式 → 画出来的 → 用矢量
  • 显微镜照片、电泳胶、Western blot、CT / MRI 断层、任何相机或扫描仪出来的东西 → 拍出来的 → 用位图(TIFF)

这个判断标准比“这张图属于什么类型”好用,因为一张组图里往往两样都有,按元素分,不按整图分。

矢量图没有 dpi 这回事

这一点特别容易被问倒:“你这张 EPS 是多少 dpi 的?”

矢量格式存的是形状本身⁠——一条曲线、一个矩形、一段文字,渲染的时候由输出设备决定分辨率。所以矢量图在 1200 dpi 的印刷机上就是 1200 dpi,文件里没有、也不需要有一个 dpi 数字。

问一个 EPS 是多少 dpi,相当于问一个 Word 文档是多少 dpi,范畴就不对。

也正因为这样:凡是要求 1000 dpi 线条图的地方,能用矢量就一定要用矢量⁠——因为它连这个门槛都不用谈。

常用的几款软件怎么导

软件
导出路径
关键设置
Origin
File → Export Graphs
格式选 EPS / PDF;勾上 Embed Fonts;不要走“导出为图像”那条路
GraphPad Prism
File → Export
矢量选 EPS / PDF,位图选 TIFF 并设 dpi;注意颜色模式
R / ggplot2
ggsave("fig1.pdf"),

⁠或 cairo_ps("fig1.eps")
PDF / EPS 设备天然矢量;字号用 theme(text = element_text(size = 7))⁠ 对齐期刊要求
Python / matplotlib
plt.savefig("fig1.pdf")
存 PDF / SVG / EPS 才是矢量;存 PNG 再设 dpi=300⁠ 依然是位图
Inkscape / Illustrator
拼完图另存 PDF / EPS
文字保持可编辑,不要转曲

有一个细节很多人不知道:Nature 明确要求不要把文字轮廓化(outline text)。转成曲线的字,编辑想改一个字母都改不了,会直接给你退回来。

关于字体和线宽,各家口径放在一起看:

来源
字体要求
字号
线宽
Nature
Arial / Helvetica 等标准字体
最终尺寸下 5–7 pt
—
Elsevier
Arial / Helvetica / Courier / Times 等
最小 7 pt,上下标不小于 6 pt
最小 0.25 pt
《中国科学》系列
中文 7 pt 幼圆,英文数字 7 pt Arial
7 pt
0.5–0.6 mm

注意最后两行的单位差:Elsevier 用 pt,《中国科学》用 mm。0.5–0.6 mm 折算过来大约是 1.4–1.7 pt,⁠比 Elsevier 的下限粗不少。抄投稿须知的时候把这两个单位混了,线可能就画细了。

拼图这一步最容易出事

多 panel 图的通行做法是:每个 panel 单独出矢量图 → 到一个矢量软件里拼 → 导出成一个 PDF / EPS 交稿。

这一步的坑:

  • 在 PPT 里拼图,再导出成图片。
    ⁠ 全变位图,前面所有矢量操作白做
  • 在 Illustrator 里拼图但用了“链接”(Link)方式,导出时忘了嵌入。
    ⁠ 期刊收到的可能是空框,或者低分辨率的代理图
  • 拼完在 Word 里缩放。
    ⁠ 矢量缩放本身没问题,但 Word 会把整张图当成一个位图副本处理

一个稳的工作流:所有 panel 出一遍矢量(PDF / EPS / SVG)→ Adobe Illustrator 或 Inkscape 里拼 → 存一份 AI 保留编辑态 → 另存 PDF 交稿。

Inkscape 是免费的,做科研配图完全够用。

传文件环节的两个隐形杀手

  1. 微信 / QQ 传图。
    ⁠ 默认压缩,大图会重采样,dpi 掉得悄无声息。传原图请用邮件附件、网盘,或者干脆打包成 zip
  2. 在 Word 里“插入图片”和“拖进去”是两回事。
    ⁠ 拖拽和复制粘贴进来的图会被当成 72 dpi 的位图处理,PLOS 的制图指南里专门点了这一条。必须走「插入 → 图片」

所以最后一句忠告很朴素:原始工程文件(.opju / .pzfx / .Rmd / .ai)永远不要删。⁠ 图被压过了,重新出一遍就行;工程文件没了,就得从头重画。


三、色盲友好:从“知道”到“真的落地”

先说这件事的概率有多高

红绿色觉异常,在北欧血统男性里约 8%⁠(约十二分之一),女性约 0.5%⁠(约两百分之一)。东亚男性低一些,大约 4%–5%。各种类型合计,全球大约 3 亿人。

分型大致是这样:

类型
男性比例
特征
绿色弱(deuteranomaly)
约 5%
红绿混淆,单这一型就占了全部病例的一半以上
绿色盲(deuteranopia)
约 1.2%
红绿混淆
红色弱 / 红色盲
各约 1%
红绿混淆,且红色显得更暗
蓝黄色觉异常(tritanopia 等)
不足 0.01%
蓝黄混淆,男女比例接近

红绿两型加起来,占全部色觉异常的 约 99%。

这就是为什么“不要红配绿”是唯一一条不能破的规则。

有一个说法我印象很深:假如一篇稿子恰好送给三位北欧血统的男性审稿人,其中至少一位有色觉异常的概率约 22%。

所以这不是一个“政治正确”的问题,是四分之一的概率,你自己精心画的那张图会被看错。

硬红线:这三条别碰

第一,红 — 绿。⁠ 最常见,也最容易踩。不只是纯红配纯绿,还包括绿配棕、浅绿配黄、红配橙。

第二,彩虹色阶(jet / rainbow)。⁠ Crameri 2020 年在 Nature Communications 上专门写过这件事:rainbow 既不是感知均匀的(会凭空造出数据里根本没有的“分带”),在三种色盲模拟和黑白打印下也全部失效。它是科学传播里被误用最严重的色板,没有之一。

第三,蓝 — 紫。⁠ 对蓝黄色盲不友好。虽然比例很低,但顺手避开几乎零成本。

该用什么:三套色板

分类数据(8 组以内)→ Okabe-Ito

Nature 官方的绘图指南里直接列出了这一套,可见地位。它源自 Okabe 和 Ito 2002 年提出的 Color Universal Design,后来被 Bang Wong 在 2011 年 Nature Methods 的专栏里介绍给生命科学界,所以也叫 Wong palette。

颜色
Hex
黑
#000000
橙
#E69F00
天蓝
#56B4E9
蓝绿
#009E73
黄
#F0E442
蓝
#0072B2
朱红
#D55E00
紫红
#CC79A7

这八个色在三种色盲模拟下都能两两分开,属于“闭着眼睛抄也不会错”的选择。

备选方案:⁠Paul Tol 的 bright 7 色(#4477AA #EE6677 #228833 #CCBB44 #66CCEE #AA3377 #BBBBBB)⁠,色相更饱和一点,投影仪上比 Okabe-Ito 的黄色更清楚。

如果图必须印成黑白,用 Tol 的 high-contrast 3 色(#004488⁠ / #DDAA33⁠ / #BB5566)。这三个色的亮度⁠差异足够大,灰度打印也分得开。

连续数据(热图、密度、表达量)→ viridis 系

  • viridis:
    ⁠matplotlib 2.0 之后的默认色板,感知均匀 + 色盲友好
  • cividis:
    ⁠专门为色盲优化过。它的设计目标是让正常视觉和红绿色盲看到的是同一条渐变⁠(Nuñez 2018, PLOS ONE)。在屏幕上没那么好看,但放到海报、附录这种你控制不了观看条件的地方更稳
  • batlow
    ⁠(Crameri):作为 jet 的替代品设计,深蓝 → 赭黄 → 浅黄,亮度单调递增

凡是“红—绿”或“彩虹”的连续色阶,都别用。

发散数据(以 0 为中心的差异、z-score、log fold change)→ vik / roma 或 RdBu / PuOr

  • Crameri 的 vik⁠(蓝—白—红)和 roma⁠ 是感知均匀的发散色板,现在地球科学、海洋、气候这几个领域基本是默认选择
  • ColorBrewer 的 RdBu⁠(红蓝)、PuOr⁠(紫橙)也可以用

有一句提醒:发散色板只用在真的存在零点的时候。纯粹递增的数据配发散色,会诱导读者去找一个根本不存在的符号变化。

顺带说一句 ColorBrewer(colorbrewer2.org):官网可以勾选 "colorblind safe" 过滤,但勾完之后能通过的定性⁠色板寥寥无几——它更适合用来挑连续和发散色阶。

比换色板更重要的三条纪律

说实话,换了 Okabe-Ito 就以为万事大吉,是个错觉。真正决定这张图能不能读的,是下面这三条。

第一条:不要只靠颜色传信息。

这是最有效的一条。颜色只是线索之一,其他通道同时上:

  • 线型:实线 / 虚线 / 点线 / 点划线
  • 点型:圆 / 方 / 三角 / 菱形
  • 填充:实心 / 斜纹 / 网格 / 点阵
  • 直接标注:把“对照组”“处理组”写在曲线旁边,而不是塞进图例

一根红线和一根绿线,如果线型一个是实线一个是虚线,红绿色盲也能一眼分清。这一条比挑色板管用得多。

第二条:转成灰度看一眼。

这是最省事、也最有效的自检:

  • 分类色:各组还能不能两两区分?
  • 连续色阶:亮度是不是单调递增,顺序还读得出来吗?

ColorBrewer 和 Paul Tol 的色板都是按“亮度有序”设计的,过这一关很容易;rainbow 一定过不了。

Prism、Origin、Illustrator、Python 都能一键转灰度,成本几乎为零。

第三条:荧光图把“红 + 绿”换成“绿 + 品红”。

做共定位的都知道红绿双色的习惯有多深。但 Nature 的指南明确建议:荧光图像重配色成色盲可辨识的组合,比如绿 + 品红(magenta)、⁠青 + 红、黄 + 蓝。红绿是唯一被点名的反例。

换成绿 + 品红,对正常视觉的观感几乎没损失,成本极低。

检查工具与三分钟流程

工具
平台
说明
Coblis
网页
上传图片,一次给出多种色盲的模拟结果,最省事
Color Oracle
Win / Mac / Linux,免费
全屏实时滤镜,边调边看
Sim Daltonism
Mac / iOS
鼠标附近实时模拟
Illustrator / Photoshop
内置
View → Proof Setup → Protanopia / Deuteranopia。注意没有⁠ tritanopia
ColorBrewer 2.0
网页
选色板时勾上 colorblind safe
Viz Palette
网页
粘一组 hex,一次看到它在各种色盲下的效果

三分钟自检流程:

  1. 图转灰度 → 还能分清 → 过第一关
  2. 丢进 Coblis,选 deuteranopia 和 protanopia → 还能分清 → 过第二关
  3. 分不清 → 先加线型 / 点型 / 标注(比换色快),还不行再换色板

投稿前,把这十条过一遍

  1. 每张图的像素数 ÷(排版宽度 ÷ 25.4)⁠ ≥ 期刊要求的 dpi
  2. 线条图、示意图已经导出为矢量(EPS / PDF / AI),不是 PNG 或 JPG
  3. 照片是 TIFF,不低于 300 dpi,而且没有被插值放大过
  4. 组图里没有任何一个 panel 来自截图或 PPT 粘贴
  5. 字号在最终尺寸下不小于 5 pt(Nature 要求 5–7 pt),线宽不小于 0.25 pt
  6. 字体统一,且嵌进了文件里,⁠没有转曲
  7. 颜色模式:Nature 和 Elsevier 建议 RGB 投稿(印刷社会自动转 CMYK)
  8. 分类色用的是 Okabe-Ito 或等价色板,没有红绿组合
  9. 连续色阶没有用 rainbow / jet
  10. 图转灰度后仍能区分,Coblis 模拟下也能区分

最后

这三个词看着是三条互不相干的规定,其实是同一个问题的三个面:你这张图,是给谁、在什么条件下看的?

  • 300 dpi 问的是——印出来还清不清楚
  • 矢量图问的是——不管放大多少倍,它还准不准
  • 色盲友好问的是——换一双眼睛,它还读不读得懂

想通这一层,投稿须知里那些零碎的技术条款,你基本可以自己推出来。

weinxin
我的微信公众号
分享科研软件、科研方法,为你的科研助力。
ScienceSoft
  • 本文由 发表于 29 9 月, 2026 22:02:37
  • 转载请务必保留本文链接:https://www.sciencesoft.cn/%e8%ae%ba%e6%96%87%e9%85%8d%e5%9b%be%e8%a7%84%e8%8c%83%ef%bc%9a300dpi-%e7%9f%a2%e9%87%8f%e5%9b%be-%e8%89%b2%e7%9b%b2%e5%8f%8b%e5%a5%bd%e6%80%8e%e4%b9%88%e8%90%bd%e5%9c%b0/
评论  0  访客  0
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定