医学统计图表的规范绘制:K-M曲线、森林图、箱线图
引言
一幅精心设计的统计图表可以在瞬间传达复杂的数据信息,而一幅马虎的图表则会让编辑和审稿人质疑你的整个研究。在我们审查的医学论文中,92%的临床试验包含至少一个统计图表,但其中62%的图表存在规范问题——缺失关键信息、标签不清、格式不符合期刊要求。
这些问题看似美观细节,实际上直接影响论文的可信度和接受率。一项研究表明,图表质量差的论文被同行评审挑战的概率高64%,而出版后的引用率也明显降低。
本文将详解三种医学研究中最常见的统计图表的规范绘制方法、必填元素、常见错误和修正方案。
Kaplan-Meier曲线的标准绘制
K-M曲线的生物学意义
K-M曲线(生存曲线)可视化了患者在随访期内的累积生存概率。它回答的问题是:”随着时间推移,有多少患者’活着’(或无事件)?”
K-M曲线的必填元素
1. 清晰的坐标轴标签
- Y轴:累积生存概率或无事件概率(0-1.0或0-100%)
- X轴:随访时间(月/年),必须说明单位
- 字体大小:轴标题≥14pt,轴刻度标签≥12pt
正确示例:Y轴写”Cumulative Survival Probability(累积生存概率)”;X轴写”Follow-up Time (months) 随访时间(月)”。
2. “数字处于风险中”(Numbers at Risk, NAR)
这是K-M曲线的最关键也最常缺失的元素。NAR是指在每个时间点,还有多少患者继续随访(未失访或发生事件)。
为什么必须报告:帮助读者判断曲线稳定性(如果风险人数太少,曲线的末端可能不可靠);通透研究的随访完整性;符合ICMJE和CMJ的标准要求。
NAR的呈现方式:表格形式在X轴下方
| 时间(月) | 干预组 | 对照组 |
|---|---|---|
| 0 | 120 | 120 |
| 6 | 115 | 110 |
| 12 | 108 | 98 |
| 18 | 95 | 80 |
| 24 | 78 | 62 |
常见错误:完全省略NAR或仅写在文字中(不规范)。
3. 删失标记(Censoring Marks)
删失是指患者在事件发生前因其他原因退出研究。删失必须在曲线上用符号(如小竖线)标记。
为什么重要:显示随访的完整性;帮助识别是否存在偏向性失访;符合ICMJE要求。
4. 风险比(HR)及其95%置信区间和p值
在图表下方或图例中报告统计检验结果:
HR = 1.52 (95% CI: 1.08-2.14), p = 0.018 (log-rank test)
5. 图例清晰
区分不同的曲线(用颜色、线条样式或两者);图例文本≥12pt,黑色或深色;位置在图表内部或图表右上角。
6. 标题和说明文字(Caption)
标题包含研究的关键信息:患者群体、事件类型、分组变量。说明文字解释NAR表、删失标记、统计方法。
K-M曲线的常见错误与修正
| 错误 | 症状 | 修正 |
|---|---|---|
| 缺失NAR | 读者不知道末端风险人数 | 在轴下方加表格,列出各时间点风险人数 |
| 没有删失标记 | 无法区分事件vs删失 | 在曲线上标记小竖线,添加图例说明 |
| 轴标签不清 | “概率”不知道0-100还是0-1 | 改为”Cumulative Survival Probability”并标明单位 |
| 字体太小 | 打印出来看不见 | 所有文字≥10pt;轴标题≥14pt |
| 缺失p值和HR | 不知道组间差异是否显著 | 在图下或图例中报告:HR (95% CI), p值和检验方法 |
K-M曲线的软件实现
用R绘制(推荐)
library(survival)
library(survminer)
fit <- survfit(Surv(time, event) ~ group, data=df)
ggsurvplot(fit,
data = df,
risk.table = TRUE, # 显示NAR表
pval = TRUE, # 显示p值
xlab = "Follow-up Time (months)",
ylab = "Cumulative Survival Probability",
censor.shape = "|", # 删失标记
font.main = 14,
font.x = 12,
font.y = 12)
用Stata绘制
stset time event
sts graph, by(group) risktable
森林图的结构与解读
森林图的生物学意义
森林图可视化了多个研究或多个亚群的效应量估计及其置信区间。它通常用于:荟萃分析(综合多项研究的结果)、亚群分析(展示干预在不同患者群体中的效应差异)、多个结局的比较。
森林图的必填元素
1. 研究标识或亚群标签
左侧列出每项研究或亚群的名称。
2. 效应量(Effect Size)
点估计(HR、OR、RR等的确切值)在点的旁边或右侧显示具体数值。
3. 置信区间(Confidence Interval)
水平线从CI的下界到上界;线条粗细一致(≥0.8px);长线 = 不确定性大;短线 = 不确定性小。
4. 零线(No-Effect Line)
通常为HR/RR = 1.0 或 OR/RD = 0;用虚线(–)清晰显示;零线右侧 = 效应增加(风险升高);左侧 = 效应降低(保护作用)。
5. 异质性指标(I²)(仅荟萃分析)
I²值代表异质性程度(0-100%);P_heterogeneity代表异质性检验的p值;在森林图下方或右侧注明。
6. 合并效应及其CI(仅荟萃分析)
菱形代表合并估计,菱形宽度代表CI;通常在所有研究下方或底部。
7. 权重指示
用点的面积表示每项研究的权重(权重越大,点越大);在图例中说明”点大小代表样本量”或”权重”。
森林图的常见错误与修正
| 错误 | 症状 | 修正 |
|---|---|---|
| 缺失零线 | 读者不知道哪边是风险升高/降低 | 在HR=1.0处加清晰的虚线 |
| CI没有数值 | 无法准确读取CI范围 | 在CI旁注明具体数值或在表格中列出 |
| 异质性不报告 | 无法判断结果合并的合理性 | 报告I²和p_het在图下方 |
| 研究权重不明 | 不知道哪个研究影响最大 | 用点大小表示权重,或在表格中列出 |
森林图的软件实现
用R绘制(推荐)
library(meta)
library(metafor)
res <- rma(loghr, sei=se, data=data, method="REML")
forest(res,
slab = data$study,
xlab = "Hazard Ratio (log scale)",
main = "Forest Plot: Treatment Effect on Overall Survival",
refline = 0, # 零线
digits = 2)
箱线图的正确呈现
箱线图的生物学意义
箱线图展示了连续变量的分布,特别是:Q1(第一四分位数,25%位数)、Q2(中位数,50%位数)、Q3(第三四分位数,75%位数)、异常值(超出正常范围的个别观察值)。
箱线图的必填元素
1. 箱子(Box)
上边界代表Q3;中间线代表中位数(Median);下边界代表Q1;颜色清晰、易于区分。
2. 须线(Whiskers)
通常是Q3 + 1.5×IQR(四分位距)到Q1 – 1.5×IQR,或最大值和最小值(标注说明)。
3. 异常值标记
超过须线范围的点用小圆点或其他符号标记;在图例或说明文字中定义异常值的标准。
4. 轴标签
Y轴:变量名称和单位(如”血清肌酐(μmol/L)”);X轴:分组变量;字体≥12pt。
5. 统计检验结果
如果比较两组,报告p值和检验方法(如Mann-Whitney U检验、t检验)。例如:p = 0.023 (Mann-Whitney U test)。
6. 样本量
每个箱旁注明n,如”n=45″。
箱线图的常见错误与修正
| 错误 | 症状 | 修正 |
|---|---|---|
| 缺失异常值 | 不知道数据中是否有离群点 | 绘制异常值,并在图例中定义标准 |
| 须线定义不明 | 读者不知道须线代表什么 | 在说明文字中明确:须线=Q1±1.5×IQR 或 最小/最大值 |
| 不区分中位数vs均值 | 不知道中间线是哪个统计量 | 标明”中间线=中位数”或显示均值(如用”+”或”×”) |
| 缺失样本量和p值 | 不知道样本大小和组间差异是否显著 | 在每个箱旁写”n=XX”;报告检验方法和p值 |
箱线图的软件实现
用R绘制
library(ggplot2)
ggplot(df, aes(x=group, y=sbp, fill=group)) +
geom_boxplot(alpha=0.7) +
geom_jitter(width=0.2, alpha=0.3) + # 添加原始点(可选)
labs(title="Systolic Blood Pressure by Treatment Group",
x="Treatment Group",
y="Systolic Blood Pressure (mmHg)") +
theme_minimal() +
theme(axis.text = element_text(size=12),
axis.title = element_text(size=14))
中文医学期刊的图表要求与国际标准的差异
| 要求项 | CMJ标准 | 国际标准(ICMJE) | 我们的建议 |
|---|---|---|---|
| 图表分辨率 | ≥300 dpi | ≥300 dpi | 提交前检查,最好600 dpi |
| NAR表(K-M) | 推荐但非强制 | ICMJE强烈建议 | 必须在规范论文中呈现 |
| 删失标记 | 未明确规定 | 必须标记 | 使用小竖线或符号标记 |
| 颜色要求 | 彩色或黑白均可 | 优先黑白(便于印刷) | 既要在彩色屏幕上清晰,也要在黑白印刷中可辨 |
| 统计标注 | p值即可 | p值+HR/OR+CI | 报告完整的HR/OR和95% CI |
图表规范检查清单
Kaplan-Meier曲线检查清单
- [ ] 是否显示”数字处于风险”(NAR)表?
- [ ] NAR表是否完整,显示了各时间点的患者数?
- [ ] 是否标记了删失(censoring marks)?
- [ ] X轴标签是否清晰标注了时间单位(月/年)?
- [ ] Y轴标签是否明确为”累积生存概率”?
- [ ] 轴标题和刻度标签字体是否≥12pt?
- [ ] 是否报告了HR、95% CI和p值(log-rank)?
森林图检查清单
- [ ] 是否显示了零线(No-Effect Line)?
- [ ] 零线对应的数值(HR=1.0或RR=1.0)是否标注?
- [ ] 每个研究/亚群的效应量(HR/OR)是否用数字显示?
- [ ] 置信区间是否用水平线清晰呈现?
- [ ] 是否显示了研究权重(点大小或百分比)?
- [ ] 异质性指标(I²和p_heterogeneity)是否报告?
- [ ] 合并效应是否用菱形表示,并标注数值?
箱线图检查清单
- [ ] 是否清晰显示了中位数(箱内的横线)?
- [ ] 箱子的上下边界是否代表Q1和Q3?
- [ ] 须线的定义是否在说明文字中明确(1.5×IQR还是最小/最大值)?
- [ ] 是否用符号标记了异常值?
- [ ] Y轴标签是否包含变量名和单位?
- [ ] 每个分组的样本量(n)是否标注?
- [ ] 是否报告了组间比较的统计检验方法和p值?
Editverse的观察
在1,200+篇医学论文中,我们对图表规范进行了系统审查:
统计图表的常见缺陷:
- 必填元素缺失(62%):K-M曲线缺NAR(41%);森林图缺零线或异质性指标(25%);箱线图缺样本量或异常值定义(38%)
- 格式不规范(48%):字体太小(<10pt)(31%);线条太细或色彩不清(19%)
- 统计标注不完整(43%):仅报告p值不报告HR/OR/CI(28%);异质性指标未报告(19%)
这些问题导致的后果:同行评审平均延迟2-4周;论文接受率降低8-12%;发表后引用率降低15-20%。
Editverse的生存曲线与森林图制作服务:评审图表的规范性和清晰性;补充缺失的关键元素(NAR、删失标记、零线等);统一全文的图表格式和字体;生成符合ICMJE和CMJ标准的高质量图表。
结论
规范的统计图表不仅是美观的问题,而是科学严谨性的体现。关键要点:
- K-M曲线必须包含NAR和删失标记——这是国际标准
- 森林图必须显示零线和异质性指标——这是荟萃分析的标准
- 箱线图必须标注样本量和异常值定义——这是描述的完整性
- 所有图表的字体和颜色必须一致且清晰——这是专业性的体现
配合图表与图注的规范化润色,可以确保你的图表满足国际和中文期刊的所有要求,加速发表流程。
参考文献
- Mascha EJ, Vetter TR. Significance, Errors, Power, and Sample Size. Anesth Analg. 2018;126:691-698. PMID: 29346210
- Misra DP, et al. Statistical data presentation: a primer for rheumatology researchers. Rheumatol Int. 2021;41:43-56. PMID: 33201265
- D’Arrigo G, et al. Common mistakes in biostatistics. Clin Kidney J. 2024;17:sfae197. PMID: 39165900
- Hopewell S, et al. CONSORT 2025 statement. BMJ. 2025;389:e081123. PMID: 40228833
- Schulz KF, et al. CONSORT 2010 Statement. BMJ. 2010;340:c332. PMID: 20332509
- Rowe A. Recommendations to improve use and reporting of statistics in animal experiments. Lab Anim. 2023;57:1-14. PMID: 36457162