This function creates a ternary plot to visualize plant ecological strategies
based on the CSR (Competitor-Stress tolerator-Ruderal) framework developed by
Grime (1974). The plot is built using ggplot2
and displays the relative
proportions of C, S, and R strategies for each species or sample.
CSR_plot(
data,
point_size = 3,
point_shape = 21,
custom_colors = c(C = "#E60D0D", `C/CR` = "#BA0D3B", `C/CS` = "#BA3B0D", CR =
"#7A0D7A", `C/CSR` = "#8A3B3B", CS = "#7A7A0D", `CR/CSR` = "#6B2B6B", `CS/CSR` =
"#6B6B2B", `R/CR` = "#3B0DBA", CSR = "#545454", `S/CS` = "#3BBA0D", `R/CSR` =
"#3B3B8A", `S/CSR` = "#3B8A3B", R = "#0D0DE6", `SR/CSR` = "#2B6B6B", S = "#0DE60D",
`R/SR` = "#0D3BBA", `S/SR` = "#0DBA3B", SR = "#0D7A7A")
)
A ggplot object representing a ternary plot with:
Points colored by CSR strategy type
Ternary coordinate system with C, S, R axes
Legend showing strategy types and their colors
Grid lines and arrows for better visualization
A data frame containing CSR strategy data. Must include columns:
Numeric vector of Competitor strategy values (0-100)
Numeric vector of Stress-tolerator strategy values (0-100)
Numeric vector of Ruderal strategy values (0-100)
Character vector indicating the CSR strategy type/classification
Numeric value specifying the size of points in the plot. Default is 3.
Numeric value specifying the shape of points in the plot. Default is 21 (filled circle with border).
Named character vector specifying custom colors for each CSR strategy type. Default includes 19 predefined colors for all possible CSR combinations.
The CSR strategy framework classifies plants into three primary functional types based on their ecological strategies:
Species adapted to productive, low-stress environments
Species adapted to unproductive, high-stress environments
Species adapted to productive, high-disturbance environments
The ternary plot allows visualization of the relative contribution of each strategy, where each point represents a species positioned according to its C, S, and R values (which sum to 100%).
Grime, J.P. (1974). Vegetation classification by reference to strategies. Nature, 250, 26–31.
Hodgson, J.G., Wilson, P.J., Hunt, R., Grime, J.P. & Thompson, K. (1999). Allocating CSR plant functional types: a soft approach to a hard problem. Oikos, 85, 282–294.
Caccianiga, M., Luzzaro, A., Pierce, S., Ceriani, R.M. & Cerabolini, B. (2006). The functional basis of a primary succession resolved by CSR classification. Oikos, 112, 10–20.
Pierce, S., Negreiros, D., Cerabolini, B.E.L., Kattge, J., Díaz, S., et al. (2017). A global method for calculating plant CSR ecological strategies applied across biomes world-wide. Functional Ecology, 31: 444-457.
CSR
or CSR_hodgson
for calculating CSR strategies from plant functional traits
data(PFF)
head(PFF)
traits <- data.frame(LA=PFF$Leaf_area, LDMC=PFF$LDMC, SLA=PFF$SLA)
head(traits)
result <- CSR(data = traits)
head(result)
CSR_plot(data=result)
Run the code above in your browser using DataLab