2020-12-24 13:44:30, 祝介东 北京力高泰科技有限公司/基因有限公司农业环境部
可能是去年底使用了 Coursolle et al. (2019) 这样的方法修改后,进行 RACiR 数据的分析,这次是对其做了修改。
其实年初就已经使用 LI-6800 的 BP 程序,将测量方法自动化,并修改了一下 Coursolle et al. (2019) 的方法,不记录最初稳定二氧化碳的数据,因为他的数据中,下图三角形区域的数据是完全无用的,不需要记录。

这种方式使原来的方式进行直接批量删除是不可取的。容易出错或者残留无效数据。针对这个情况我进行的修改和测试为:使用 BP 进行测量,目前我已经完成 BP 相关的程序,本节的示例则是基于我实测的验证数据来进行(相关测试已经录好视频,可能后面公司公众号会推,如有 BP 自动测量 RACiR 的需要,请跟我们公司联系)。这个程序也是基于 @Coursolle12019 的方法,测量步骤和修改如下:
在接近外界的 浓度下进行诱导,控制 reference 的 420 ppm ,控制水分 reference 为 20
,此处不做修改。
使用自动控制,在 2 min 时间内,将 的 reference 气路浓度,下降到 20,然后等待 10-15 s 的时间。此处的修改为,不记录这些数据,减少数据处理的麻烦。 例如上图中三角形区域的数据。
运行自动控制,将 的 reference 浓度由 20 上升到 1520 ppm (仅作为测试范围,并非绝对),本步骤不做修改,记录数据,此为所需要数据。
实际上主要的修改就是将这个步骤自动化,需要人为操作的步骤仅仅是点 start 按键启动整个测量。
对于软件包的修改:
主要的修改:
独立的 xls_read 函数用于读取 excel 格式数据并修改叶面积。
独立的“清洗”空叶室数据的函数 tidy_data_empty。
独立的“清洗"带叶片测量数据的函数 tidy_data。
将数据的清洗使用 A 值的一个上限和一个下限来解决。
使用的方法如下(有使用标准 ACi 测量数据的比较内容):
数据的清洗其实比较简单,主要利用相邻的两个测量 A 值的差值来进行,为方便确定差值,针对空叶室和带叶片测量的数据,单独设定了两个函数,来确定合理的过滤范围,这样说太抽象,我们导入数据后直接看图:
1. 导入数据:
此函数本质上是 xlconnect_read,如无需修改叶面积,则使用默认值。如果需要修改叶面积,需要输入 S 参数,叶面积修改值必须和 A 的值一一对应,否则因为叶面积错误,则导致其他的错误,例如上面修改叶面积为原来的一半:
library(racir)
library(plantecophys)
empty <- xls_read("data/racir-empty.xlsx")
leaf <- xls_read("data/racir-leaf.xlsx")
# 标准的aci数据
aci <- xls_read("data/aci-curve.xlsx")
half_leaf <- xls_read("data/racir-leaf.xlsx", S = leaf$S/2)
head(half_leaf$A/leaf$A)
tail(half_leaf$A/leaf$A)

修改面积仅作演示用,如无需修改,则不要输入面积选项。
2. 关于空叶室的数据过滤范围的选取:
check_delta_empty(empty, delta_max = 0.5, lower_A = -1)

这里首先不要被第二幅图的波动所迷惑,主要是坐标轴差异太小。然后第一幅图中,这里设定了一个最大最小光合速率的范围(阈值,upper_A 和 lower_A),默认最大值是 2 以及最小值是 -2,上面我使用了最小值为 -1,也就是删除小于 -1 的光合速率,最大值 2 并不是删除,二是寻找 -2 < A < 2 范围的数据,从这里面找一个最小值,保留这一行的数据到测量数据结束。另一个阈值删除相邻两个A值过大差值的数据的阈值(delta_max),对于这个阈值,LI-6800 其实并不敏感,因为本身数据非常稳定。
3. 关于带叶片测量的数据过滤范围的选取:
check_delta(leaf, delta_max = 0.5, lower_A = -1)

带叶片的数据同上,没有特殊的参数,从右图的数据来看,他在修正之前的光合速率,符合我们的预期。
4. 确定范围后数据的清洗:
tidy_leaf <- tidy_data(leaf, delta_max = 0.5, lower_A = -1)
tidy_empty <- tidy_data_empty(empty, delta_max = 0.5, lower_A = -1)
### 修正带叶片测量数据
z <- correct_leaf(tidy_empty, tidy_leaf)
4. 拟合后的数据:
fit_racir <- fitaci(z,
varnames =
list(
ALEAF = "A",
Tleaf = "Tleaf",
Ci = "Ci",
PPFD = "Qin",
Rd = "Rd"
))
fit_normal <- fitaci(aci,
varnames =
list(
ALEAF = "A",
Tleaf = "Tleaf",
Ci = "Ci",
PPFD = "Qin",
Rd = "Rd"
))
ACi 曲线作图:

RACiR 作图:

当然,拟合重合度是非线性拟合的原因,与测量无关。
RAiR 的结果:

ACi 的结果:

此处的数据和视频里的数据以及函数的参数略有差别,因为我修改了一下 racir 软件包的过滤条件,使得筛选数据更符合要求。本身因为不是同一时间测量,测量 RACiR 时叶片的气孔导度略到,因此,其略大符合预期。
数据的重合程度 (实际上 RACiR 数据点要浓密的多,我使用了透明度为 80%,这样看上去仍然颜色非常深,这是 RACiR 采集数据点达到几百个的原因。ACi 测量点为 50-2000 ppm,RACiR 为 20-1520 ppm):
library(RColorBrewer)
library(latex2exp)
line_col <- brewer.pal(2,"Set1")
racir_col <- scales::alpha(line_col[1], 0.2)
aci_col <- line_col[2]
plot(
z$Ci,
z$A,
cex = 2.3,
col = racir_col,
pch = 20,
xlim = c(50, 1400),
ylim = c(-1, 38),
xlab = TeX(''$C_i$ $(\\\\mu mol \\\\cdot mol^{-1})$''),
ylab = TeX(''A $(\\\\mu mol \\\\cdot mol^{-1})$'')
)
points(aci$Ci,
aci$A,
cex = 2.3,
col = aci_col,
pch = 20)
legend(
10,
35,
legend = c("RACiR","ACi"),
col = c(racir_col, aci_col),
pch = 20,
bty = "n",
pt.cex = 2.3
)

在线版本同步更新:
http://zhu_jie_dong.gitee.io/photoanalysis/
https://zhujiedong.github.io/photoanalysis/


04-01 汉尧
【温馨提示】上海汉尧2026清明假期放假及发货物流安排04-01 汉尧
展会邀请丨4月13日-15日,雷磁在上海环博会等您!04-01
GLMY创想仪器丨亮相百铸订单春季采购会04-01
“测不准、控不住、做不快”?创想仪器带你告别元素检测的三大“顽疾”04-01
沙漠种树CSR行动|津材护绿,向沙而行03-31 岛津实验器材
左手倚天,右手屠龙 - Shim-pack Velox与Shim-pack Scepter色谱柱03-31 岛津实验器材
清明将至 | 岛津实验器材清明节放假通知03-31
岛津会议| 邀您共赴CVAIF2026第九届抗体药物开发与疫苗创新论坛-北京亦庄03-31
理学X射线解决方案在锂离子及固态电池研发中的应用03-31
2025药典新规解读(一):第四部药用辅料及药包材检测方法全面升级,福立仪器系列化方案助您从容应对03-31 福立仪器
和晟仪器诚邀共襄盛会—2026国际橡塑展03-31
深耕仪器智造二十年 上海和晟以创新赋能国家产业升级03-31
药物分析排忧解难系列 | 如何应对极端比例和缓梯度03-31 安捷伦科技
稳定之选 Altura Poroshell 120 PFAS 色谱柱分析饮用水中的 C1–C18 PFAS03-31 安捷伦科技
看得见的干净,看不见的风险|季铵盐的家庭暴露路径被重新定义03-31 安捷伦科技
春日蓄力正当时!【视界研讨荟】焕新上线,解锁行业前沿秘籍03-31 安捷伦科技
深度解析:LIBS 光谱学、工作原理、仪器优势、应用领域......03-31
台积电ISSCC 2026:硅光子平台的接收端突破当AI算力需求以指数级攀升,芯片之间的数据传输正在经历一场静悄悄的材料突破。03-30 光电传感器量测
Nat. Energy 港中大Martin Stolterfoht、港城大Alex K.-Y. Jen、Xiaofeng Huang:效率26.3%与稳定运作3000小时!a-SAMUL重塑电洞选择层03-30