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

如何在R Studio中为校准曲线添加3个样本数据点并计算浓度

校准曲线添加样本点及浓度计算方案

步骤1:拟合线性模型并计算样本浓度

先拟合校准曲线的线性模型,再通过模型系数反推样本吸光度对应的浓度(线性模型公式为 Absorbance = a*Concentration + b,因此浓度计算公式为 Concentration = (Absorbance - b)/a)。

完整代码如下:

# 校准曲线数据
BSA <- data.frame(
  Concentration = c(0.0, 0.2, 0.4, 0.6, 0.8, 1.0), 
  Absorbance = c(0.000, 0.182, 0.159, 0.121, 0.311, 0.352)
)

# 待计算的样本数据
values <- data.frame(
  Sample = c("Control", "Pre-treatment", "Post-treatment"), 
  Absorbance = c(0.008, 0.280, 0.117)
)

# 拟合线性回归模型
lm_model <- lm(Absorbance ~ Concentration, data = BSA)
# 提取模型系数:a为斜率,b为截距
a <- coef(lm_model)[[2]]
b <- coef(lm_model)[[1]]

# 计算每个样本对应的浓度
values$Concentration <- (values$Absorbance - b)/a

运行后values数据框会新增Concentration列,即各样本的计算浓度。

步骤2:将样本点添加到校准曲线图表

在原有绘图代码基础上,用points()添加样本点,text()标注样本名称,与校准曲线的点做区分:

# 绘制校准曲线散点图和拟合线
plot(BSA$Concentration, BSA$Absorbance, 
     ylab = "Absorbance of BSA", 
     xlab = "Assay Concentration (mg/ml)", # 修正为常见浓度单位,若实际为ml/mg可改回
     las = 1,
     pch = 16, # 校准点用实心圆
     col = "black") 
abline(lm_model, col = "blue", lwd = 2)

# 添加样本点:用不同形状和颜色区分
points(values$Concentration, values$Absorbance, 
       pch = 17, # 用实心三角
       col = "red", 
       cex = 1.2)

# 添加样本名称标注
text(values$Concentration + 0.03, values$Absorbance, # 偏移位置避免遮挡点
     labels = values$Sample, 
     col = "red", 
     cex = 0.8)

补充说明

  • 该方案基于吸光度与浓度线性相关的假设,若校准数据线性度差,建议先检查数据合理性
  • 样本点的形状、颜色及标注偏移量可根据图表实际范围调整

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 00:07:26