class: center, middle, inverse, title-slide # Soil texture triangles using R ## Soil Biophysics Lab ### Sara Acevedo ### 08 / 07 / 2021 --- <style type="text/css"> .remark-code{line-height: 1.2; font-size: 70%} @media print { .has-continuation { display: block; } } </style> --- name: about-me class: about-me-slide, inverse, middle, center # About me <img style="border-radius: 50%;" src="https://saryace.github.io/images/profile.png" width="150px"/> *Sara Acevedo* *Dr. (c) Ciencias de la Ingeniería* *Msc. Soils and Biogeochemistry* .fade[Pontificia Universidad Católica de Chile<br>Santiago, Chile] [<svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"></path></svg> saryace.github.io](https://saryace.github.io) [<svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"></path></svg> @saryace](https://twitter.com/saryace) [<svg viewBox="0 0 496 512" style="position:relative;display:inline-block;top:.1em;height:1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg> @Saryace](https://github.com/Saryace) --- name: about-me class: about-me-slide, inverse, middle, center # About Soil Biophysics Lab <img style="border-radius: 50%;" src="https://static.wixstatic.com/media/a71414_85de21ba13024a48a60097ce851dae16~mv2.png" width="250px"/> *Soil Biophysics Lab* *PI: Dr. Carlos Bonilla* .fade[Pontificia Universidad Católica de Chile<br>Santiago, Chile] [<svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"></path></svg> biofisica.ing.puc.cl](https://biofisica.ing.puc.cl) [<svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"></path></svg> @soilbiophysics1](https://twitter.com/soilbiophysics1) [<svg viewBox="0 0 448 512" style="position:relative;display:inline-block;top:.1em;height:1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg> @soilbiophysicslab](https://www.instagram.com/soilbiophysicslab) --- class: inverse ## Soil Biophysics Laboratory
--- class: middle ## Soil texture triangle representation of sand, silt and clay percentages --- ##Example dataframe ```r soil_data <- data.frame( soil= c("a", "b", "c", "d"), sand = c(15, 18, 57, 32), silt = c(52, 70, 8, 26), clay = c(33, 12, 35, 42), om = c(1, 3, 4, 11), bd = c(1.33, 1.38, 1.76, 1.15) ) ``` * sand + silt + clay = 100% * Extra variables, om y bd --- ### Using summary function for check the data ```r summary(soil_data) ``` ``` soil sand silt clay Length:4 Min. :15.00 Min. : 8.0 Min. :12.00 Class :character 1st Qu.:17.25 1st Qu.:21.5 1st Qu.:27.75 Mode :character Median :25.00 Median :39.0 Median :34.00 Mean :30.50 Mean :39.0 Mean :30.50 3rd Qu.:38.25 3rd Qu.:56.5 3rd Qu.:36.75 Max. :57.00 Max. :70.0 Max. :42.00 om bd Min. : 1.00 Min. :1.150 1st Qu.: 2.50 1st Qu.:1.285 Median : 3.50 Median :1.355 Mean : 4.75 Mean :1.405 3rd Qu.: 5.75 3rd Qu.:1.475 Max. :11.00 Max. :1.760 ``` --- class: inverse, middle, right ##package {soiltexture} ### Authors: Julien Moeys et al., 2018 ### [link-github](https://github.com/julienmoeys/soiltexture) --- ### r package {soiltexture} .pull-left[ ```r library(soiltexture) TT.plot( class.sys = "USDA.TT", tri.data = soil_data, css.names = c("clay", "silt", "sand"), main = "Soil texture triangle" ) ``` ] .pull-right[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-out-1.png" width="360" /> ] --- ### r package {soiltexture} .pull-left[ ```r library(soiltexture) TT.plot( class.sys = "USDA.TT", tri.data = soil_data, css.names = c("clay", "silt", "sand"), main = "Soil texture triangle", z.name = "om" ) ``` ] .pull-right[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-2-out-1.png" width="360" /> ] --- ### r package {soiltexture} .pull-left[ ```r library(soiltexture) TT.plot( class.sys = "USDA.TT", tri.data = soil_data, css.names = c("clay", "silt", "sand"), main = "Soil texture triangle", z.name = "om", cex.axis = 0.8, cex.lab = 0.8 ) ``` ] .pull-right[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-3-out-1.png" width="360" /> ] --- class: inverse, middle, right ## packages {ggplot2} +{ggtern} ### Authors: Wickham et al., 2016 {ggplot} y Hamilton 2016 {ggtern} ### [Link-ggplot2](https://ggplot2.tidyverse.org/) ### [Link-ggtern](https://CRAN.R-project.org/package=ggtern) --- ### r package {ggplot2 + ggtern} .pull-left[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om )) + geom_point(size = 5) + theme_showarrows() + labs(yarrow = "clay (%)", zarrow = "silt (%)", xarrow = "sand(%)") + scale_colour_gradient(low = "yellow", high = "red") + theme_clockwise() ``` ] .pull-right[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-4-out-1.png" width="360" /> ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) #<< ``` ] .panel2-plot-label-4-auto[ ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) #<< ``` ] .panel2-plot-label-4-auto[ ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) #<< ``` ] .panel2-plot-label-4-auto[ ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data #<< ``` ] .panel2-plot-label-4-auto[ ``` soil sand silt clay om bd 1 a 15 52 33 1 1.33 2 b 18 70 12 3 1.38 3 c 57 8 35 4 1.76 4 d 32 26 42 11 1.15 ``` ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( #<< x = sand, #<< y = clay, #<< z = silt, #<< color = om #<< )) #<< ``` ] .panel2-plot-label-4-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-4_auto_05_output-1.png" width="360" /> ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om )) + geom_point(size = 5) #<< ``` ] .panel2-plot-label-4-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-4_auto_06_output-1.png" width="360" /> ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om )) + geom_point(size = 5) + theme_showarrows() #<< ``` ] .panel2-plot-label-4-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-4_auto_07_output-1.png" width="360" /> ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om )) + geom_point(size = 5) + theme_showarrows() + labs(yarrow = "clay (%)", #<< zarrow = "silt (%)", #<< xarrow = "sand(%)") #<< ``` ] .panel2-plot-label-4-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-4_auto_08_output-1.png" width="360" /> ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om )) + geom_point(size = 5) + theme_showarrows() + labs(yarrow = "clay (%)", zarrow = "silt (%)", xarrow = "sand(%)") + scale_colour_gradient(low = "yellow", #<< high = "red") #<< ``` ] .panel2-plot-label-4-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-4_auto_09_output-1.png" width="360" /> ] --- count: false ### Simple triangle .panel1-plot-label-4-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om )) + geom_point(size = 5) + theme_showarrows() + labs(yarrow = "clay (%)", zarrow = "silt (%)", xarrow = "sand(%)") + scale_colour_gradient(low = "yellow", high = "red") + theme_clockwise() #<< ``` ] .panel2-plot-label-4-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-4_auto_10_output-1.png" width="360" /> ] <style> .panel1-plot-label-4-auto { color: black; width: 38.6060606060606%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel2-plot-label-4-auto { color: black; width: 59.3939393939394%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel3-plot-label-4-auto { color: black; width: NA%; hight: 33%; float: left; padding-left: 1%; font-size: 80% } </style> --- ### More features .pull-left[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om, size = bd )) + geom_point() + theme_showarrows() + labs(yarrow = "clay (%)", zarrow = "silt (%)", xarrow = "sand(%)") + scale_colour_gradient(low = "yellow", high = "red") + theme_clockwise() ``` ] .pull-right[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-5-out-1.png" width="360" /> ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) #<< ``` ] .panel2-plot-label-5-auto[ ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) #<< ``` ] .panel2-plot-label-5-auto[ ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) #<< ``` ] .panel2-plot-label-5-auto[ ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data #<< ``` ] .panel2-plot-label-5-auto[ ``` soil sand silt clay om bd 1 a 15 52 33 1 1.33 2 b 18 70 12 3 1.38 3 c 57 8 35 4 1.76 4 d 32 26 42 11 1.15 ``` ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( #<< x = sand, #<< y = clay, #<< z = silt, #<< color = om, #<< size = bd #<< )) #<< ``` ] .panel2-plot-label-5-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-5_auto_05_output-1.png" width="360" /> ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om, size = bd )) + geom_point() #<< ``` ] .panel2-plot-label-5-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-5_auto_06_output-1.png" width="360" /> ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om, size = bd )) + geom_point() + theme_showarrows() #<< ``` ] .panel2-plot-label-5-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-5_auto_07_output-1.png" width="360" /> ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om, size = bd )) + geom_point() + theme_showarrows() + labs(yarrow = "clay (%)", #<< zarrow = "silt (%)", #<< xarrow = "sand(%)") #<< ``` ] .panel2-plot-label-5-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-5_auto_08_output-1.png" width="360" /> ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om, size = bd )) + geom_point() + theme_showarrows() + labs(yarrow = "clay (%)", zarrow = "silt (%)", xarrow = "sand(%)") + scale_colour_gradient(low = "yellow", #<< high = "red") #<< ``` ] .panel2-plot-label-5-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-5_auto_09_output-1.png" width="360" /> ] --- count: false ### More features .panel1-plot-label-5-auto[ ```r library(ggplot2) library(ggtern) theme_set(theme_bw()) soil_data %>% ggtern(aes( x = sand, y = clay, z = silt, color = om, size = bd )) + geom_point() + theme_showarrows() + labs(yarrow = "clay (%)", zarrow = "silt (%)", xarrow = "sand(%)") + scale_colour_gradient(low = "yellow", high = "red") + theme_clockwise() #<< ``` ] .panel2-plot-label-5-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-5_auto_10_output-1.png" width="360" /> ] <style> .panel1-plot-label-5-auto { color: black; width: 38.6060606060606%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel2-plot-label-5-auto { color: black; width: 59.3939393939394%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel3-plot-label-5-auto { color: black; width: NA%; hight: 33%; float: left; padding-left: 1%; font-size: 80% } </style> --- ### Loading USDA polygons ```r library(ggtern) data(USDA) head(USDA, 10) ``` ``` Clay Sand Silt Label 1 1.00 0.00 0.00 Clay 2 0.55 0.45 0.00 Clay 3 0.40 0.45 0.15 Clay 4 0.40 0.20 0.40 Clay 5 0.60 0.00 0.40 Clay 6 0.55 0.45 0.00 Sandy Clay 7 0.35 0.65 0.00 Sandy Clay 8 0.35 0.45 0.20 Sandy Clay 9 0.35 0.65 0.00 Sandy Clay Loam 10 0.20 0.80 0.00 Sandy Clay Loam ``` --- ###Preparing centered-labels for textural classes ```r library(dplyr) USDA_text <- USDA %>% group_by(Label) %>% summarise_if(is.numeric, mean, na.rm = TRUE) USDA_text ``` ``` # A tibble: 12 x 4 Label Clay Sand Silt <fct> <dbl> <dbl> <dbl> 1 Clay 0.59 0.22 0.19 2 Sandy Clay 0.417 0.517 0.0667 3 Sandy Clay Loam 0.275 0.575 0.15 4 Sandy Loam 0.0929 0.621 0.286 5 Loamy Sand 0.0625 0.825 0.112 6 Sand 0.0333 0.917 0.05 7 Clay Loam 0.338 0.325 0.338 8 Loam 0.17 0.435 0.395 9 Silt Loam 0.133 0.167 0.7 10 Silty Clay 0.467 0.0667 0.467 11 Silty Clay Loam 0.338 0.1 0.562 12 Silt 0.0625 0.0688 0.869 ``` --- .pull-left[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black" ) + geom_text(data = USDA_text, aes(label = Label), color = 'black', size = 2) + geom_point( data = soil_data, aes( x = sand, y = clay, z = silt ) ) + theme_showarrows() + theme_clockwise() + theme(text = element_text(family = "Helvetica")) + guides(fill=FALSE, color=FALSE) ``` ] .pull-right[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6-out-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( #<< y = Clay, #<< x = Sand, #<< z = Silt #<< )) #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_01_output-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_02_output-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( #<< aes(fill = Label), #<< alpha = 0.0, #<< size = 0.5, #<< color = "black" #<< ) #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_03_output-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black" ) + geom_text(data = USDA_text, #<< aes(label = Label), #<< color = 'black', #<< size = 2) #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_04_output-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black" ) + geom_text(data = USDA_text, aes(label = Label), color = 'black', size = 2) + geom_point( #<< data = soil_data, #<< aes( #<< x = sand, #<< y = clay, #<< z = silt #<< ) #<< ) #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_05_output-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black" ) + geom_text(data = USDA_text, aes(label = Label), color = 'black', size = 2) + geom_point( data = soil_data, aes( x = sand, y = clay, z = silt ) ) + theme_showarrows() #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_06_output-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black" ) + geom_text(data = USDA_text, aes(label = Label), color = 'black', size = 2) + geom_point( data = soil_data, aes( x = sand, y = clay, z = silt ) ) + theme_showarrows() + theme_clockwise() #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_07_output-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black" ) + geom_text(data = USDA_text, aes(label = Label), color = 'black', size = 2) + geom_point( data = soil_data, aes( x = sand, y = clay, z = silt ) ) + theme_showarrows() + theme_clockwise() + theme(text = element_text(family = "Helvetica")) #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_08_output-1.png" width="360" /> ] --- count: false ### ggplot2 + coord_tern .panel1-plot-label-6-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black" ) + geom_text(data = USDA_text, aes(label = Label), color = 'black', size = 2) + geom_point( data = soil_data, aes( x = sand, y = clay, z = silt ) ) + theme_showarrows() + theme_clockwise() + theme(text = element_text(family = "Helvetica")) + guides(fill=FALSE, color=FALSE) #<< ``` ] .panel2-plot-label-6-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-6_auto_09_output-1.png" width="360" /> ] <style> .panel1-plot-label-6-auto { color: black; width: 38.6060606060606%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel2-plot-label-6-auto { color: black; width: 59.3939393939394%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel3-plot-label-6-auto { color: black; width: NA%; hight: 33%; float: left; padding-left: 1%; font-size: 80% } </style> --- ##Just for fun <img src="img/twit_sssa.png" width="300px"/> --- ##Just for fun ```r triangle_soil_scientists <- USDA_text %>% mutate( Label = c( "Soil Surveyors", "Soil Judgers", "Digital Soil Mappers", "Soil Physicists", "Pedometricians", "Pedometricians", "Pedologists", "μ-morphologists", "Soil Ecologist", "Humus Expert", "Soil Crust Expert", "Soil Biologist")) ``` --- .pull-left[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black", show.legend = FALSE ) + geom_text(data = triangle_soil_scientists, aes(label = Label), color = 'black', size = 2) + theme_showarrows() + theme_clockwise() + labs(yarrow = "Like camping and maps", zarrow = "Like worms and plants", xarrow = "Like computer and matemathics") + theme_hidetitles() + theme(text = element_text(family = "Helvetica")) ``` ] .pull-right[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7-out-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( #<< y = Clay, #<< x = Sand, #<< z = Silt #<< )) #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_01_output-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_02_output-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( #<< aes(fill = Label), #<< alpha = 0.0, #<< size = 0.5, #<< color = "black", #<< show.legend = FALSE #<< ) #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_03_output-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black", show.legend = FALSE ) + geom_text(data = triangle_soil_scientists, #<< aes(label = Label), #<< color = 'black', #<< size = 2) #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_04_output-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black", show.legend = FALSE ) + geom_text(data = triangle_soil_scientists, aes(label = Label), color = 'black', size = 2) + theme_showarrows() #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_05_output-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black", show.legend = FALSE ) + geom_text(data = triangle_soil_scientists, aes(label = Label), color = 'black', size = 2) + theme_showarrows() + theme_clockwise() #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_06_output-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black", show.legend = FALSE ) + geom_text(data = triangle_soil_scientists, aes(label = Label), color = 'black', size = 2) + theme_showarrows() + theme_clockwise() + labs(yarrow = "Like camping and maps", #<< zarrow = "Like worms and plants", #<< xarrow = "Like computer and matemathics") #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_07_output-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black", show.legend = FALSE ) + geom_text(data = triangle_soil_scientists, aes(label = Label), color = 'black', size = 2) + theme_showarrows() + theme_clockwise() + labs(yarrow = "Like camping and maps", zarrow = "Like worms and plants", xarrow = "Like computer and matemathics") + theme_hidetitles() #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_08_output-1.png" width="360" /> ] --- count: false ###Just for fun .panel1-plot-label-7-auto[ ```r ggplot(data = USDA, aes( y = Clay, x = Sand, z = Silt )) + coord_tern(L = "x", T = "y", R = "z") + geom_polygon( aes(fill = Label), alpha = 0.0, size = 0.5, color = "black", show.legend = FALSE ) + geom_text(data = triangle_soil_scientists, aes(label = Label), color = 'black', size = 2) + theme_showarrows() + theme_clockwise() + labs(yarrow = "Like camping and maps", zarrow = "Like worms and plants", xarrow = "Like computer and matemathics") + theme_hidetitles() + theme(text = element_text(family = "Helvetica")) #<< ``` ] .panel2-plot-label-7-auto[ <img src="flipbook_soiltexture_en_files/figure-html/plot-label-7_auto_09_output-1.png" width="360" /> ] <style> .panel1-plot-label-7-auto { color: black; width: 38.6060606060606%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel2-plot-label-7-auto { color: black; width: 59.3939393939394%; hight: 32%; float: left; padding-left: 1%; font-size: 80% } .panel3-plot-label-7-auto { color: black; width: NA%; hight: 33%; float: left; padding-left: 1%; font-size: 80% } </style> --- .pull-left[ ### {soiltexture} 1. Easy to use 2. Includes several texture classifications 3. Can plot a 4th variable ] .pull-right[ ### {ggplot2 + ggtern} 1. Slightly more complex 2. Very flexible for colors and shapes 3. It is necessary to prepare data for textural classifications manually ] --- class: goodbye-slide, inverse, middle, right ### Questions? Comments? You can contact us at: .left[ [<svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"></path></svg> biofisica.ing.puc.cl](https://biofisica.ing.puc.cl) [<svg viewBox="0 0 512 512" style="height:1em;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"></path></svg> @soilbiophysics1](https://twitter.com/soilbiophysics1) [<svg viewBox="0 0 448 512" style="position:relative;display:inline-block;top:.1em;height:1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg> @soilbiophysicslab](https://www.instagram.com/soilbiophysicslab) ]