You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R的ggplot中绘制含LLOQ/ULOQ的定量检测限值数据?

处理LLOQ/ULOQ数据并优雅绘图的方法

针对带有<LLOQ/>ULOQ标记的定量数据,无需手动替换数值,可通过数据预处理+自定义轴刻度的方式实现优雅绘图,以下是基于R语言tidyverse和ggplot2的实现方案:

1. 定义参数与预处理数据

先明确LLOQ(定量下限)和ULOQ(定量上限)的数值,再自动提取数据中的数值部分并标记数据类型:

library(tidyverse)

# 定义定量范围参数
LLOQ <- 2
ULOQ <- 10

# 原始数据集
df <- data.frame(values = c('>10', '8.8', '4', '6', '<2', '2.5', '<2'), 
                 timepoint = c(1, 2, 3, 4, 5, 6, 7))

# 自动化预处理
df_processed <- df %>%
  mutate(
    # 提取字符串中的数字并转为数值
    num_values = as.numeric(str_extract(values, "\\d+\\.*\\d*")),
    # 标记数据类型:<LLOQ/正常/>ULOQ
    value_type = case_when(
      str_detect(values, "^<") ~ "<LLOQ",
      str_detect(values, "^>") ~ ">ULOQ",
      TRUE ~ "正常"
    ),
    # 设置绘图用的y轴位置:超出范围的点偏移到LLOQ/ULOQ附近,避免与刻度重叠
    plot_y = case_when(
      value_type == "<LLOQ" ~ LLOQ * 0.9,
      value_type == ">ULOQ" ~ ULOQ * 1.1,
      TRUE ~ num_values
    )
  )

2. 自定义轴刻度绘图

用ggplot2绘制,并将y轴刻度直接替换为<LLOQ和>ULOQ,同时用不同形状区分数据类型:

ggplot(df_processed, aes(x = timepoint, y = plot_y)) +
  geom_point(aes(shape = value_type), size = 3) +
  # 自定义y轴刻度与标签
  scale_y_continuous(
    breaks = c(LLOQ * 0.9, seq(LLOQ, ULOQ, 2), ULOQ * 1.1),
    labels = c("<LLOQ", "2", "4", "6", "8", "10", ">ULOQ"),
    limits = c(LLOQ * 0.8, ULOQ * 1.2)  # 调整轴范围,确保所有点可见
  ) +
  labs(x = "时间点", y = "数值", shape = "数据类型") +
  theme_bw()

3. 可选:标注原始值

如果需要在图中显示原始的<2/>10标记,可添加geom_text:

ggplot(df_processed, aes(x = timepoint, y = plot_y)) +
  geom_point(aes(shape = value_type), size = 3) +
  geom_text(aes(label = values), vjust = -1, size = 3) +  # 在点上方标注原始值
  scale_y_continuous(
    breaks = c(LLOQ * 0.9, seq(LLOQ, ULOQ, 2), ULOQ * 1.1),
    labels = c("<LLOQ", "2", "4", "6", "8", "10", ">ULOQ"),
    limits = c(LLOQ * 0.8, ULOQ * 1.3)
  ) +
  labs(x = "时间点", y = "数值", shape = "数据类型") +
  theme_bw()

方案优势

  • 完全自动化:无需手动替换字符串,只需定义LLOQ/ULOQ即可适配不同数据集
  • 可视化清晰:轴刻度直接显示<LLOQ/>ULOQ,用形状区分数据类型,符合科研绘图规范
  • 灵活性高:可调整偏移比例、刻度间隔等参数,适配不同需求

内容的提问来源于stack exchange,提问作者vmuir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 02:10:24