latdist: Computing Lateral Root Length and Density Distribution

Description Usage Arguments Details Value Author(s) References Examples

View source: R/latdist.R

Description

Analysing the lateral root length and density distribution on each mother root using Data Analysis of Root Tracings (DART) output files and RSA data encoded with the Root System Markup Language (RSML). More information can be found in Delory et al (2016), Le Bot et al (2010), and Lobet et al (2015).

Usage

1
2
latdist(inputrac=NULL, inputrsml=NULL, output=c("lrd","dtp"), res=NULL, unitlength="px",
        int.length=NULL, interpol=NULL, rsml.connect=TRUE)

Arguments

inputrac

A character string specifying the path to the folder containing the rac files created by DART. This argument could be the same as inputrsml.

inputrsml

A character string specifying the path to the folder containing the RSML files. This argument could be the same as inputrac.

output

A character string specifying the type of output that is returned by the function. Two values are acceptable for this argument: “lrd” (default value; root length and density distribution) and “dtp” (distance between neighbouring lateral roots). See details.

res

Mandatory for DART files only. If images were acquired with a flatbed scanner: a numeric value specifying the resolution of the images used to vectorize the root systems with DART (resolution is expressed in dots/inch). If images were acquired with a digital camera: the ratio between the length of a reference object located on the image expressed in pixels and the actual length of the same object expressed in inches. For DART files, this argument must be specified if unitlength="mm" or unitlength="cm". For RSML files, the resolution is imported from the metadata and does not need to be specified as an argument.

unitlength

A character string specifying the unit of length that must be used to plot the root systems. The value acceptable for this argument could be either “px” for pixels, “cm” for centimetres or “mm” for millimetres.

int.length

Mandatory when output="lrd". A numeric value specifying the interval length (expressed in unitlength) used to calculate local lateral root length and density (see details).

interpol

A numeric value specifying the number of points used on each mother root to calculate local lateral root length and density. By default, interpol=NULL means that the function calculates local lateral root length and density at each branching point of each mother root. A numeric value can be specified when output="lrd" (see details).

rsml.connect

Only used for RSML files. A logical value that must be specified when is.null(inputrsml)=FALSE. If TRUE, the lateral roots are connected to their parent root (see details). If FALSE, no connection is made between daughter and mother roots.

Details

DBase: distance between a branching point and the parent root base.

To run latdist efficiently, DART (.rac) and RSML (.rsml) files must have been saved with their appropriate extension.

After reading the RSML files located in inputrsml, the data associated with each root system are converted into a data frame possessing the same structure as the rac files created by DART. The latdist function then uses these data frames to compute lateral root length and density distribution.

The rsml.connect argument can be used to connect the lateral roots to their corresponding mother root. If rsml.connect=TRUE, each point starting a lateral root is connected to the nearest point located on its mother root. DBase is approximated by the distance between the parent root base and the point located on the mother root that is closest to the point starting a lateral root. Using RSML files, only RSA data associated with roots possessing a branching order lower or equal to 7 are used for the computation of RSA traits.

If output="lrd", the function uses interpol to select the appropriate DBase values for which the calculation of RSA parameters should be performed. Then, a lateral root density and a total lateral root length are calculated on intervals possessing a length equal to int.length and centred on each DBase value.

Value

Returns a list including:

root

A list of data frames. Each element of the list is named as its corresponding rac/RSML file and contains the following columns: Root (the identification number of each root constituting a vectorized root system), Ord (the branching order), LatRootNum (the number of lateral roots), FinalRootLength (the root length at the last observation date expressed in unitlength), LatRootDensity (the lateral root density calculated as LatRootNum/FinalRootLength and expressed in root(s)/unitlength).

results

A list of secondary lists. Each element of the primary list (results) is named as its corresponding rac/RSML file. The secondary lists contain as much elements as roots constituting a vectorized root system. Each element of the secondary lists could be either a NULL value if a root does not have lateral roots or if no DBase value is comprised in [int.length/2, FinalRootLength-(int.length/2)], or a data frame made of two or three columns depending on the output value.

If output="lrd": DBase (the distance between the branching point and the parent root base expressed in unitlength), LRD (Local lateral root density expressed in root(s)/unitlength), LRL (Local lateral root length expressed in unitlength/unitlength).

If output="dtp": DBase (the distance between the branching point and the parent root base expressed in unitlength), DTP (the distance to the previous lateral root expressed in unitlength).

Author(s)

Benjamin M. Delory, Guillaume Lobet, Loic Pages

References

Delory B.M., Baudson C., Brostaux Y., Lobet G., du Jardin P., Pages L., Delaplace P. (2016) archiDART: an R package for the automated computation of plant root architectural traits, Plant and Soil, DOI: 10.1007/s11104-015-2673-4.

Le Bot J., Serra V., Fabre J., Draye X., Adamowicz S., Pages L. (2010) DART: a software to analyse root system architecture and development from captured images, Plant and Soil, DOI: 10.1007/s11104-009-0005-2.

Lobet G., Pound M.P., Diener J., Pradal C., Draye X., Godin C., Javaux M., Leitner D., Meunier F., Nacry P., Pridmore T.P., Schnepf A. (2015) Root System Markup Language: Toward a Unified Root Architecture Description Language, Plant Physiology, DOI: 10.1104/pp.114.253625.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
## Locate folder with DART and RSML files
path <- system.file("extdata", package="archiDART")

##-----------------
## DART files only
##-----------------

## Plotting the results for the primary root
## output="lrd", interpol=NULL, int.length=5
res3a <- latdist(inputrac=path, output="lrd", res=75, unitlength="cm",
int.length=5)

plot(res3a$results$ch7[[1]]$DBase, res3a$results$ch7[[1]]$LRD, pch=16, 
xlab="DBase (cm)",ylab="Lateral root density (roots/cm)", main="LRD-interpol=NULL-int.length=5",
las=1, bty="l", xaxp=c(0,90,9))

plot(res3a$results$ch7[[1]]$DBase, res3a$results$ch7[[1]]$LRL, pch=16, 
xlab="DBase (cm)",ylab="Lateral root length (cm/cm)", main="LRL-interpol=NULL-int.length=5",
las=1, bty="l", xaxp=c(0,90,9))

## output="lrd", interpol=1000, int.length=5
res3b <- latdist(inputrac=path, output="lrd", res=75, unitlength="cm",
int.length=5, interpol=1000)

plot(res3b$results$ch7[[1]]$DBase, res3b$results$ch7[[1]]$LRD, pch=16, 
xlab="DBase (cm)", ylab="Lateral root density (roots/cm)", main="LRD-interpol=1000-int.length=5", 
las=1, bty="l", xaxp=c(0,90,9))

plot(res3b$results$ch7[[1]]$DBase, res3b$results$ch7[[1]]$LRL, pch=16, 
xlab="DBase (cm)", ylab="Lateral root length (cm/cm)", main="LRL-interpol=1000-int.length=5", 
las=1, bty="l", xaxp=c(0,90,9))

## output="dtp"
res3c <- latdist(inputrac=path, output="dtp", res=75, unitlength="cm")

plot(res3c$results$ch7[[1]]$DBase, res3c$results$ch7[[1]]$DTP, pch=16, 
xlab="DBase (cm)", ylab="Distance to the previous root (cm)", main="DTP", las=1, bty="l",
xaxp=c(0,90,9))

##-----------------
## RSML files only
##-----------------

## output="lrd", interpol=200, int.length=1
res3d <- latdist(inputrsml=path, unitlength="cm", output="lrd", int.length=1, interpol=200,
rsml.connect=TRUE)

##output="dtp"
res3e <- latdist(inputrsml=path, output="dtp", unitlength="cm")

##---------------------
## DART and RSML files
##---------------------

## output="lrd", interpol=200, int.length=2
res3f <- latdist(inputrac=path, inputrsml=path, output="lrd", res=75, unitlength="cm",
int.length=2, interpol=200, rsml.connect=TRUE)

## output="dtp"
res3g <- latdist(inputrac=path, inputrsml=path, output="dtp", res=75, unitlength="cm")

archiDART documentation built on Feb. 11, 2021, 5:08 p.m.

Related to latdist in archiDART...