Root anatomy and biomechanical properties: improving predictions through root cortical and stele properties - Data and code
This data and code repository contains all raw measurement data, interpreted data and code associated with the paper "Root anatomy and biomechanical properties: improving predictions through root cortical and stele properties", as published by G. J. Meijer, J. G. Chimungu, J. P. Lynch and K. W. Loades in the journal Plant & Soil (2024).
An explanation of all files, grouped per folder, is given below.
License details.
This readme file, written in Markdown, explaining the nature of the data repository
.TXT file containing requirements for running the R scripts. Contains list of packages (and sometimes package version requirements) that are required to run the code successfully.
RStudio project file (.Rproj) that helps to manage the file structure and version control. This file is not strictly necessary for the analysis but makes life easier (e.g. relative paths).
The "Data" folder contains the raw input data, in the form of .CSV files, as measured during the tests. There are three different files
Contains results from the laser ablation tests (LAT). Multiple tests can be conducted per sample. The file contains the following column data (data type in square brackets):
sample_id
: the unique sample identifier of the tested root [character]replicate
: laser ablation replicate [integer]root_area [mm^2]
: measured root cross-sectional area, in mm squared [numeric]stele_area [mm^2]
: measured stele cross-sectional area, in mm squared [numeric]cortex_area [mm^2]
: measured cortex cross-sectional area, in mm squared [numeric]test_succesful
: should the replicate be included in the analysis [boolean]. Some LAT tests yielded unreliable datatest_comment
: comments on test or on fieldtest_succesful
Contains metadata for each tensile test, e.g. data on root diameter, span length etc. Each row corresponds with a single tensile test. The file contains the following column data (data type in square brackets):
sample_id
: unique identifier of the tested root [character]diameter [mm]
: manually measured diameter of the root, in mm [numeric]span_length [mm]
: the span length used in the tension test, in mm [numeric]displacement_rate [mm/min]
: the displacement rate adopted in the tension test, in mm per second [numeric]root_type
: type of the root (seminal, nodal etc.) [character]genotype
: the root genotype [character]segment
: the sampling range along a root [character]test_succesful
: indicator whether the tensile test was successful and can be used in the analysis [boolean]. This required that the entire stress--strain trace was accurately measured without any clamp slippage or other test artefactstest_comment
: Comments on tensile test, and sometimes reasons for analysis exclusion
Contains the measured force--displacement data for each tensile test. Each row is a single observation. The file contains the following column data (data type in square brackets):
sample_id
: unique identifier of the tested root [character]time [s]
: elapsed time since the start of the test, in seconds [numeric]displacement [mm]
: tensile test cross-head deformation, in mm [numeric]force [N]
: tensile force applied, in Newtons [numeric]
R script that:
- Take the measured force--displacement results for each test and calculates the root yield point (yield stress, yield strain) and ultimate point (root tensile strength, root strain to peak) for each successful tension test
- Takes laser ablation tomography (LAT) data and calculates the average root, stele and cortex cross-sectional areas for each successful tensile test
The script outputs the interpreted data in file output/data/data_rootproperties.csv
, and generated various plots that are saved in the folder output/plots
.
R script that: 1. Takes the interpreted root tensile test (yield point, ultimate point) and LAT data. 2. Calculates the coefficients of determination (
The script outputs the fitting model results in file output/data/results_models_R2.csv
, and generates various plots that are saved in the folder output/plots
.
This script should be run after running the script code/1_analyse_raw_data.R
as it uses the output .CSV file generated by the latter (output/data/data_rootproperties.csv
).
Contains a number of R scripts that each contains one or more functions that are called during the analysis. The folder contains three .R files:
functions_biomech.R
: R functions used for interpreting the biomechanical behaviour of roots in tension. Contains functions for:- Fitting force--displacement data with linear segments
- Converting root properties and stele/cortex properties, and vice versa
functions_statistics.R
: R functions used for fitting purposes (generating fits, calculating fit coefficients, generating confidence intervals etc).functions_plotting.R
: R functions used for helping to plot various plots
Contains data and plot output generated by the R code.
Contains .CSV files with interpreted data. These files are generated by the R scripts provided, and serve to 1) share data between scripts, or 2) save data for easy lookup of the results. Altering the R scripts may alter the contents of these files.
Folder should contain the following files:
.CSV file with key tensile test and LAT results for each root. Contains the columns (data type in square brackets):
-
sample_id
: unique identifier of the tested root [character] -
diameter [mm]
: manually measured root diameter, in mm [double] -
eps_ry [mm/mm]
: root yield strain, in mm/mm [numeric] -
eps_ru [mm/mm]
: root strain to peak, in mm/mm [numeric] -
t_ry [MPa]
: root yield strength, in megapascals [numeric] -
t_ru [MPa]
: root (ultimate) strength, in megapascals [numeric] -
tortuosity [mm/mm]
: root tortuosity, defined as$u_{r,t}/L_s$ , in mm/mm [numeric]. This is the ratio between the estimated displacement required to fully stretch out the root ($u_{r,t}$ ), and the span length in the test ($L_s$ ) -
A_r [mm^2]
: average root cross-sectional area, determined using LAT tests, in mm squared [numeric] -
A_s [mm^2]
: average stele cross-sectional area, determined using LAT tests, in mm squared [numeric] -
A_c [mm^2]
: average cortex cross-sectional area, determined using LAT tests, in mm squared [numeric]
This file is generated by the R script code/1_analyse_raw_data.R
.CSV file with coefficients of determination
-
model
: model name [character] -
t_ru
:$R^2$ value for root tensile strength fitting [numeric] -
eps_ru
:$R^2$ value for root tensile strain to peak fitting [numeric] -
t_ry
:$R^2$ value for root yield strength fitting [numeric] -
eps_ry
:$R^2$ value for root yield strain fitting [numeric]
This file is generated by the R script code/2_model_comparisons.R
Contains all plots (in .PDF) format generated in the various R script provided.