Soybean (Glycine max) is a leguminous plant domesticated in China around 5,000 years ago. Initially used as green manure, it quickly became a staple food in East Asia, leading to the development of products like miso, tofu, and soy sauce. Through established trade routes between 1500 and 1400 BCE, soybean cultivation spread across Asia. Introduced to Europe in the 18th century, notably in France in 1740, soybean cultivation expanded significantly in the United States in the 20th century, primarily for animal feed due to its high protein and lipid content.
Today, soybean is the fourth most important global crop after wheat, corn, and rice, with production surpassing 336 million tons in 2016-2017. The United States, Brazil, and Argentina dominate the market, accounting for 81% of global production (see Figure 1.1). The majority of soybean is used for animal feed, reflecting the global increase in meat consumption.
Code
# data importationdf<-read.csv(here::here("data/soybean_production/soybean_production.csv")) %>% dplyr::rename("Soy_production_tonnes"="Soybeans...00000236....Production...005510....tonnes") %>%#convert in million tonnesmutate(Soy_production_m_tonnes=Soy_production_tonnes/100000)# see https://r-graph-gallery.com/web-line-chart-with-labels-at-end-of-line.html for helplevels(as.factor(df$Entity))df_select <-df %>%filter(Entity %in%c("France","European Union (27)" ,"China","United States", "Brazil", "Argentina"))max_df_select <-max(df_select$Soy_production_m_tonnes)plot_x<-df_select %>% dplyr::group_by(Entity) %>%mutate(name_lab =if_else(Year ==2022, Entity, NA_character_)) %>%ungroup() %>%ggplot(aes(x=Year,y=Soy_production_m_tonnes, group=Entity))+geom_vline(xintercept =seq(1960, 2020, by =5),color ="grey91", size = .6 ) +scale_x_continuous(expand =c(0, 0),limits =c(1960, 2060), breaks =seq(1960, 2024, by =10) )+geom_segment(data =tibble(y =seq(0, max_df_select, by =100), x1 =1960, x2 =2022),aes(x = x1, xend = x2, y = y, yend = y),inherit.aes =FALSE,color ="grey91",size = .6 ) +geom_segment(data =tibble(y =0, x1 =1960, x2 =2022),aes(x = x1, xend = x2, y = y, yend = y),inherit.aes =FALSE,color ="grey60",size = .8 ) +theme(axis.title =element_blank(),axis.text =element_text(color ="grey40"),axis.text.x =element_text(size =20, margin =margin(t =5)),axis.text.y =element_text(size =17, margin =margin(r =5)),axis.ticks =element_line(color ="grey91", size = .5),# The length of the axis ticks is increased.axis.ticks.length.x =unit(1.3, "lines"),axis.ticks.length.y =unit(.7, "lines"),panel.grid =element_blank(), legend.position ="none", plot.title =element_blank(),plot.margin =margin(20, 40, 20, 40),plot.background =element_rect(fill ="grey98", color ="grey98"),panel.background =element_rect(fill ="grey98", color ="grey98"), )+geom_point(aes(color = Entity))+geom_line(aes(color = Entity))+labs(x ="", y ="") +scale_y_continuous(labels =function(y) paste0(y, " million t") ) +scale_color_manual(values =c("#002654","#001489", "#ee1c25","#0A3161","#009739","#6CACE4"),breaks =c("France","European Union (27)" ,"China","United States", "Brazil", "Argentina") )+geom_text_repel(aes(color = Entity, label = name_lab),fontface ="bold",size =8,direction ="y",xlim =c(2023, NA),hjust =0,segment.size = .7,segment.alpha = .5,segment.linetype ="dotted",box.padding = .4,segment.curvature =-0.1,segment.ncp =3,segment.angle =20 )plot_xggsave(here::here(paste0("report/intro/plot/All.svg")),plot_x, height =8,width =14)
Figure 1.1: Soybean production is measured in tonnes. Data came from the Our Word in Data website.
In France, soybean cultivation gained traction after a U.S. export embargo in the 1970s exposed a national protein deficit. Although national production remains modest at around 400,000 tons per year, soybean offers significant agro-ecological benefits. As a legume, it fixes atmospheric nitrogen, reducing reliance on chemical fertilizers. Its roots improve soil structure, increasing porosity and water retention capacity. Additionally, integrating soybean into crop rotations can boost yields for subsequent crops like wheat and corn while reducing pesticide use and lowering the carbon footprint of agricultural practices.
In terms of phenology, soybean goes through vegetative and reproductive stages, from emergence to seed maturation. Varieties are classified into maturity groups based on their adaptation to photoperiod and temperature, allowing cultivation across various latitudes. Botanically, soybean is a self-pollinating plant with white or purple flowers, trifoliate leaves, and a deep taproot system. Its high protein and lipid content make it an economically important crop.
Grain legumes are cultivated for their protein-rich seeds, used for feed or food. Grain legumes do not need N fertilizers, thanks to their ability to fix atmospheric N2 in symbiosis with soil bacteria (rhizobia) in newly-formed root organs called nodules. As such, legumes play a pivotal role in the development of more sustainable agriculture and can contribute to the mitigation of future climate change. However, their sensitivity to environmental stresses, in particular to heat and drought stresses, leads to instability of their yield (in seed amount and protein content), which hampers legume development in cropping systems. Yields for soybeans in various countries are shown in the figure below Figure 1.2.
Code
# data importationdf<-read.csv(here::here("data/soybean_production/soybean_yields.csv")) %>% dplyr::rename("Soy_yield_tonnes_per_hectare_tonnes"="Soybeans...00000236....Yield...005419....tonnes.per.hectare")# see https://r-graph-gallery.com/web-line-chart-with-labels-at-end-of-line.html for helplevels(as.factor(df$Entity))df_select <-df %>%filter(Entity %in%c("European Union (27)" ,"China","United States", "South America (FAO)"))max_df_select <-max(df_select$Soy_yield_tonnes_per_hectare_tonnes)plot_x<-df_select %>% dplyr::group_by(Entity) %>%mutate(name_lab =if_else(Year ==2022, Entity, NA_character_)) %>%ungroup() %>%ggplot(aes(x=Year,y=Soy_yield_tonnes_per_hectare_tonnes, group=Entity))+geom_vline(xintercept =seq(1960, 2020, by =5),color ="grey91", size = .6 ) +scale_x_continuous(expand =c(0, 0),limits =c(1960, 2060), breaks =seq(1960, 2024, by =10) )+geom_segment(data =tibble(y =seq(0, max_df_select, by =1), x1 =1960, x2 =2022),aes(x = x1, xend = x2, y = y, yend = y),inherit.aes =FALSE,color ="grey91",size = .6 ) +geom_segment(data =tibble(y =0, x1 =1960, x2 =2022),aes(x = x1, xend = x2, y = y, yend = y),inherit.aes =FALSE,color ="grey60",size = .8 ) +theme(axis.title =element_blank(),axis.text =element_text(color ="grey40"),axis.text.x =element_text(size =20, margin =margin(t =5)),axis.text.y =element_text(size =17, margin =margin(r =5)),axis.ticks =element_line(color ="grey91", size = .5),# The length of the axis ticks is increased.axis.ticks.length.x =unit(1.3, "lines"),axis.ticks.length.y =unit(.7, "lines"),panel.grid =element_blank(), legend.position ="none", plot.title =element_blank(), plot.margin =margin(20, 40, 20, 40),plot.background =element_rect(fill ="grey98", color ="grey98"),panel.background =element_rect(fill ="grey98", color ="grey98"), )+geom_point(aes(color = Entity),alpha=.5)+geom_smooth(aes(color = Entity))+labs(x ="", y ="") +scale_y_continuous(labels =function(y) paste0(y, " million t") ) +scale_color_manual(values =c("#001489", "#ee1c25","#0A3161","#009739"),breaks =c("European Union (27)" ,"China","United States", "South America (FAO)") )+geom_text_repel(aes(color = Entity, label = name_lab),fontface ="bold",size =8,direction ="y",xlim =c(2023, NA),hjust =0,segment.size = .7,segment.alpha = .5,segment.linetype ="dotted",box.padding = .4,segment.curvature =-0.1,segment.ncp =3,segment.angle =20 )plot_xggsave(here::here(paste0("report/intro/plot/Yield_all.svg")),plot_x, height =8,width =12)
Figure 1.2: Soybean yields
In the context of changing climate, where more intense and longer periods of heat stresses are experienced, it is urgent to improve the ability of grain legumes to maintain their growth in order to guarantee high levels of productivity. The study of combined stresses, such as water and heat stress, is steadily increasing. However, it remains far less explored than research into simple stresses, both in plants in general and in soybeans in particular (see Figure 1.3)
Code
# Data importationcsv_files <-list.files(path = here::here("data/intro/"), pattern ="*.csv", full.names =TRUE)# Function to extract plant type and stress type from the filenameextract_info <-function(filename) {# Extract the base name without the folder path base_name <-basename(filename)# Extract plant type (assuming it's either "plant" or "soybean") plant_type <-ifelse(str_detect(base_name, "soybean"), "Soybean", "Plant")# Extract stress typeif (str_detect(base_name, "water_stress") &str_detect(base_name, "heat_stress")) { stress_type <-"Water and heat stresses" } elseif (str_detect(base_name, "water_stress")) { stress_type <-"Water stress" } elseif (str_detect(base_name, "heat_stress")) { stress_type <-"Heat stress" } else { stress_type <-NA# If no matching stress type is found }# Return a list with plant type and stress typelist(plant_type = plant_type, stress_type = stress_type)}# Read and combine all the CSV files into a single data framecombined_data <- csv_files %>%lapply(function(file) { data <-read.csv(file,skip =1) info <-extract_info(file) data$Plant <- info$plant_type data$Stress_Type <- info$stress_typereturn(data) }) %>%bind_rows()# Create plotplot_x=combined_data %>%filter(Year<2023, Year>1950) %>%mutate(Stress_Type =factor(Stress_Type, levels =c("Water stress", "Heat stress", "Water and heat stresses"))) %>%ggplot(aes(x = Year, y = Count, color=Stress_Type, fill= Stress_Type)) +#geom_hline(yintercept=0)+#geom_vline(xintercept=1950)+geom_line(size=1.5, alpha=.9) +geom_text(data = . %>%arrange(desc(Year)) %>%group_by(Plant, Stress_Type) %>%slice(1),aes(label = Count),position =position_nudge(0.1),hjust =-0.2,show.legend =FALSE) +#geom_point() + labs(title ="Number of Publications by Year",x ="Year",y ="Number of Publications",color ="Stress research:") +# Label the legend#theme_minimal() + # Apply a minimal themetheme_bw()+theme(legend.position ="none",strip.background =element_blank(),panel.background =element_blank()#panel.grid.major = element_line(color = "lightgray") )+scale_x_continuous(limits =c(1950, 2040))+facet_grid(Plant~Stress_Type, scales ="free_y", switch ="y" )+#strip.position = "top"scale_color_manual(values =c("#4D76BC", "#D6424E", "#E89005"))ggsave(here::here(paste0("report/intro/plot/pub_soybean_plant_stress.svg")),plot_x, height =5,width =8)# Create plotplot_x=combined_data %>%filter(Year<2023, Year>1970, Plant=="Plant") %>%mutate(Stress_Type =factor(Stress_Type, levels =c("Water stress", "Heat stress", "Water and heat stresses"))) %>%ggplot(aes(x = Year, y = Count, color=Stress_Type, fill= Stress_Type)) +geom_line(size=1.5, alpha=.9) +geom_text(data = . %>%arrange(desc(Year)) %>%group_by(Plant, Stress_Type) %>%slice(1),aes(label = Count),position =position_nudge(0.1),hjust =-0.2,show.legend =FALSE) +labs(x ="Year",y ="Number of Publications",color ="Stress research:") +theme_classic() +theme(legend.position ="right",strip.background =element_blank(),panel.background =element_blank(),text =element_text(size =14) )+scale_x_continuous(limits =c(1980, 2026))+scale_color_manual(values =c("#4D76BC", "#D6424E", "#E89005"))ggsave(here::here(paste0("report/intro/plot/pub_plant_stress.svg")),plot_x, height =3.5,width =7)
Figure 1.3: Number of publications per year on this research topic
High temperatures impact legumes by multiple, unclear ways : (i) Plant photosynthesis and respiration are impacted by high temperatures above thresholds which vary upon legume species. Depending on the phenological stage, the way high temperatures modulate carbon (C) allocation to the root system is not clear; second, they could affect the competition for C both between roots and nodules. This induces changes in their nutrition, growth and development. (ii) High temperatures also impact the soil microbial community in its composition, diversity and function, and shapes its interactions with plants. In particular, high temperatures affects symbiotic relationships between legumes and rhizobia and consequently plant N nutrition. High temperatures also affect non-symbiotic soil microbial activity, by modulating the amount, availability and composition of C compounds rhizodeposited in the rhizosphere (mainly labile C) by the plant, inducing changes in microbial community structure, with potential consequences on plant nutrition.
The PhD project proposes to develop new knowledge on the interplay between legume plant’s nodulated root system and associated plant and soil microorganisms, in order to design new strategies for the improvement of legume nutrient uptake efficiency during heat stress.
---output: html_documenteditor_options: chunk_output_type: console---## Introduction```{r, warning=FALSE}#pkg library(dplyr)library(ggplot2)library(ggrepel)library(ggtext)library(stringr)library(readxl)# cosmeticsclimate_pallet=read_excel(here::here("data/color_palette.xlsm")) %>% filter(set == "climat_condition") %>% dplyr::select(color, treatment) %>% pull(color) %>% setNames(read_excel(here::here("data/color_palette.xlsm")) %>% filter(set == "climat_condition") %>% pull(treatment) )```Soybean (*Glycine max*) is a leguminous plant domesticated in China around 5,000 years ago. Initially used as green manure, it quickly became a staple food in East Asia, leading to the development of products like miso, tofu, and soy sauce. Through established trade routes between 1500 and 1400 BCE, soybean cultivation spread across Asia. Introduced to Europe in the 18th century, notably in France in 1740, soybean cultivation expanded significantly in the United States in the 20th century, primarily for animal feed due to its high protein and lipid content.Today, soybean is the fourth most important global crop after wheat, corn, and rice, with production surpassing 336 million tons in 2016-2017. The United States, Brazil, and Argentina dominate the market, accounting for 81% of global production (see @fig-production). The majority of soybean is used for animal feed, reflecting the global increase in meat consumption.```{r, eval=F}# data importationdf<-read.csv(here::here("data/soybean_production/soybean_production.csv")) %>% dplyr::rename("Soy_production_tonnes"="Soybeans...00000236....Production...005510....tonnes") %>% #convert in million tonnes mutate(Soy_production_m_tonnes=Soy_production_tonnes/100000)# see https://r-graph-gallery.com/web-line-chart-with-labels-at-end-of-line.html for helplevels(as.factor(df$Entity))df_select <-df %>% filter(Entity %in% c("France","European Union (27)" ,"China","United States", "Brazil", "Argentina"))max_df_select <- max(df_select$Soy_production_m_tonnes)plot_x<-df_select %>% dplyr::group_by(Entity) %>% mutate(name_lab = if_else(Year == 2022, Entity, NA_character_)) %>% ungroup() %>% ggplot(aes(x=Year,y=Soy_production_m_tonnes, group=Entity))+ geom_vline( xintercept = seq(1960, 2020, by = 5), color = "grey91", size = .6 ) + scale_x_continuous( expand = c(0, 0), limits = c(1960, 2060), breaks = seq(1960, 2024, by = 10) )+ geom_segment( data = tibble(y = seq(0, max_df_select, by = 100), x1 = 1960, x2 = 2022), aes(x = x1, xend = x2, y = y, yend = y), inherit.aes = FALSE, color = "grey91", size = .6 ) + geom_segment( data = tibble(y = 0, x1 = 1960, x2 = 2022), aes(x = x1, xend = x2, y = y, yend = y), inherit.aes = FALSE, color = "grey60", size = .8 ) + theme( axis.title = element_blank(), axis.text = element_text(color = "grey40"), axis.text.x = element_text(size = 20, margin = margin(t = 5)), axis.text.y = element_text(size = 17, margin = margin(r = 5)), axis.ticks = element_line(color = "grey91", size = .5), # The length of the axis ticks is increased. axis.ticks.length.x = unit(1.3, "lines"), axis.ticks.length.y = unit(.7, "lines"), panel.grid = element_blank(), legend.position = "none", plot.title = element_blank(), plot.margin = margin(20, 40, 20, 40), plot.background = element_rect(fill = "grey98", color = "grey98"), panel.background = element_rect(fill = "grey98", color = "grey98"), )+ geom_point(aes(color = Entity))+ geom_line(aes(color = Entity))+ labs(x = "", y = "") + scale_y_continuous( labels = function(y) paste0(y, " million t") ) + scale_color_manual(values = c("#002654","#001489", "#ee1c25","#0A3161","#009739","#6CACE4"), breaks = c("France","European Union (27)" ,"China","United States", "Brazil", "Argentina") )+ geom_text_repel( aes(color = Entity, label = name_lab), fontface = "bold", size = 8, direction = "y", xlim = c(2023, NA), hjust = 0, segment.size = .7, segment.alpha = .5, segment.linetype = "dotted", box.padding = .4, segment.curvature = -0.1, segment.ncp = 3, segment.angle = 20 )plot_xggsave(here::here(paste0("report/intro/plot/All.svg")),plot_x, height = 8,width = 14)``` website.](plot/All.svg){#fig-production}In France, soybean cultivation gained traction after a U.S. export embargo in the 1970s exposed a national protein deficit. Although national production remains modest at around 400,000 tons per year, soybean offers significant agro-ecological benefits. As a legume, it fixes atmospheric nitrogen, reducing reliance on chemical fertilizers. Its roots improve soil structure, increasing porosity and water retention capacity. Additionally, integrating soybean into crop rotations can boost yields for subsequent crops like wheat and corn while reducing pesticide use and lowering the carbon footprint of agricultural practices.In terms of phenology, soybean goes through vegetative and reproductive stages, from emergence to seed maturation. Varieties are classified into maturity groups based on their adaptation to photoperiod and temperature, allowing cultivation across various latitudes. Botanically, soybean is a self-pollinating plant with white or purple flowers, trifoliate leaves, and a deep taproot system. Its high protein and lipid content make it an economically important crop.Grain legumes are cultivated for their protein-rich seeds, used for feed or food. Grain legumes do not need N fertilizers, thanks to their ability to fix atmospheric N2 in symbiosis with soil bacteria (rhizobia) in newly-formed root organs called nodules. As such, legumes play a pivotal role in the development of more sustainable agriculture and can contribute to the mitigation of future climate change. However, their sensitivity to environmental stresses, in particular to heat and drought stresses, leads to instability of their yield (in seed amount and protein content), which hampers legume development in cropping systems. Yields for soybeans in various countries are shown in the figure below @fig-yield.```{r, eval=F}# data importationdf<-read.csv(here::here("data/soybean_production/soybean_yields.csv")) %>% dplyr::rename("Soy_yield_tonnes_per_hectare_tonnes"="Soybeans...00000236....Yield...005419....tonnes.per.hectare")# see https://r-graph-gallery.com/web-line-chart-with-labels-at-end-of-line.html for helplevels(as.factor(df$Entity))df_select <-df %>% filter(Entity %in% c("European Union (27)" ,"China","United States", "South America (FAO)"))max_df_select <- max(df_select$Soy_yield_tonnes_per_hectare_tonnes)plot_x<-df_select %>% dplyr::group_by(Entity) %>% mutate(name_lab = if_else(Year == 2022, Entity, NA_character_)) %>% ungroup() %>% ggplot(aes(x=Year,y=Soy_yield_tonnes_per_hectare_tonnes, group=Entity))+ geom_vline( xintercept = seq(1960, 2020, by = 5), color = "grey91", size = .6 ) + scale_x_continuous( expand = c(0, 0), limits = c(1960, 2060), breaks = seq(1960, 2024, by = 10) )+ geom_segment( data = tibble(y = seq(0, max_df_select, by = 1), x1 = 1960, x2 = 2022), aes(x = x1, xend = x2, y = y, yend = y), inherit.aes = FALSE, color = "grey91", size = .6 ) + geom_segment( data = tibble(y = 0, x1 = 1960, x2 = 2022), aes(x = x1, xend = x2, y = y, yend = y), inherit.aes = FALSE, color = "grey60", size = .8 ) + theme( axis.title = element_blank(), axis.text = element_text(color = "grey40"), axis.text.x = element_text(size = 20, margin = margin(t = 5)), axis.text.y = element_text(size = 17, margin = margin(r = 5)), axis.ticks = element_line(color = "grey91", size = .5), # The length of the axis ticks is increased. axis.ticks.length.x = unit(1.3, "lines"), axis.ticks.length.y = unit(.7, "lines"), panel.grid = element_blank(), legend.position = "none", plot.title = element_blank(), plot.margin = margin(20, 40, 20, 40), plot.background = element_rect(fill = "grey98", color = "grey98"), panel.background = element_rect(fill = "grey98", color = "grey98"), )+ geom_point(aes(color = Entity),alpha=.5)+ geom_smooth(aes(color = Entity))+ labs(x = "", y = "") + scale_y_continuous( labels = function(y) paste0(y, " million t") ) + scale_color_manual(values = c("#001489", "#ee1c25","#0A3161","#009739"), breaks = c("European Union (27)" ,"China","United States", "South America (FAO)") )+ geom_text_repel( aes(color = Entity, label = name_lab), fontface = "bold", size = 8, direction = "y", xlim = c(2023, NA), hjust = 0, segment.size = .7, segment.alpha = .5, segment.linetype = "dotted", box.padding = .4, segment.curvature = -0.1, segment.ncp = 3, segment.angle = 20 )plot_xggsave(here::here(paste0("report/intro/plot/Yield_all.svg")),plot_x, height = 8,width = 12)```{#fig-yield}In the context of changing climate, where more intense and longer periods of heat stresses are experienced, it is urgent to improve the ability of grain legumes to maintain their growth in order to guarantee high levels of productivity. The study of combined stresses, such as water and heat stress, is steadily increasing. However, it remains far less explored than research into simple stresses, both in plants in general and in soybeans in particular (see @fig-research_topic)```{r, eval=FALSE}# Data importationcsv_files <- list.files(path = here::here("data/intro/"), pattern = "*.csv", full.names = TRUE)# Function to extract plant type and stress type from the filenameextract_info <- function(filename) { # Extract the base name without the folder path base_name <- basename(filename) # Extract plant type (assuming it's either "plant" or "soybean") plant_type <- ifelse(str_detect(base_name, "soybean"), "Soybean", "Plant") # Extract stress type if (str_detect(base_name, "water_stress") & str_detect(base_name, "heat_stress")) { stress_type <- "Water and heat stresses" } else if (str_detect(base_name, "water_stress")) { stress_type <- "Water stress" } else if (str_detect(base_name, "heat_stress")) { stress_type <- "Heat stress" } else { stress_type <- NA # If no matching stress type is found } # Return a list with plant type and stress type list(plant_type = plant_type, stress_type = stress_type)}# Read and combine all the CSV files into a single data framecombined_data <- csv_files %>% lapply(function(file) { data <- read.csv(file,skip = 1) info <- extract_info(file) data$Plant <- info$plant_type data$Stress_Type <- info$stress_type return(data) }) %>% bind_rows()# Create plotplot_x=combined_data %>% filter(Year<2023, Year>1950) %>% mutate(Stress_Type = factor(Stress_Type, levels = c("Water stress", "Heat stress", "Water and heat stresses"))) %>% ggplot(aes(x = Year, y = Count, color=Stress_Type, fill= Stress_Type)) + #geom_hline(yintercept=0)+ #geom_vline(xintercept=1950)+ geom_line(size=1.5, alpha=.9) + geom_text(data = . %>% arrange(desc(Year)) %>% group_by(Plant, Stress_Type) %>% slice(1), aes(label = Count), position = position_nudge(0.1), hjust = -0.2, show.legend = FALSE) + #geom_point() + labs(title = "Number of Publications by Year", x = "Year", y = "Number of Publications", color = "Stress research:") + # Label the legend #theme_minimal() + # Apply a minimal theme theme_bw()+ theme( legend.position = "none", strip.background = element_blank(), panel.background = element_blank() #panel.grid.major = element_line(color = "lightgray") )+ scale_x_continuous(limits = c(1950, 2040))+ facet_grid(Plant~Stress_Type, scales = "free_y", switch = "y" )+ #strip.position = "top" scale_color_manual(values = c("#4D76BC", "#D6424E", "#E89005"))ggsave(here::here(paste0("report/intro/plot/pub_soybean_plant_stress.svg")),plot_x, height = 5,width = 8)# Create plotplot_x=combined_data %>% filter(Year<2023, Year>1970, Plant=="Plant") %>% mutate(Stress_Type = factor(Stress_Type, levels = c("Water stress", "Heat stress", "Water and heat stresses"))) %>% ggplot(aes(x = Year, y = Count, color=Stress_Type, fill= Stress_Type)) + geom_line(size=1.5, alpha=.9) + geom_text(data = . %>% arrange(desc(Year)) %>% group_by(Plant, Stress_Type) %>% slice(1), aes(label = Count), position = position_nudge(0.1), hjust = -0.2, show.legend = FALSE) + labs(x = "Year", y = "Number of Publications", color = "Stress research:") + theme_classic() + theme( legend.position = "right", strip.background = element_blank(), panel.background = element_blank(), text = element_text(size = 14) )+ scale_x_continuous(limits = c(1980, 2026))+ scale_color_manual(values = c("#4D76BC", "#D6424E", "#E89005"))ggsave(here::here(paste0("report/intro/plot/pub_plant_stress.svg")),plot_x, height = 3.5,width = 7)```{#fig-research_topic}High temperatures impact legumes by multiple, unclear ways : (i) Plant photosynthesis and respiration are impacted by high temperatures above thresholds which vary upon legume species. Depending on the phenological stage, the way high temperatures modulate carbon (C) allocation to the root system is not clear; second, they could affect the competition for C both between roots and nodules. This induces changes in their nutrition, growth and development. (ii) High temperatures also impact the soil microbial community in its composition, diversity and function, and shapes its interactions with plants. In particular, high temperatures affects symbiotic relationships between legumes and rhizobia and consequently plant N nutrition. High temperatures also affect non-symbiotic soil microbial activity, by modulating the amount, availability and composition of C compounds rhizodeposited in the rhizosphere (mainly labile C) by the plant, inducing changes in microbial community structure, with potential consequences on plant nutrition.The PhD project proposes to develop new knowledge on the interplay between legume plant's nodulated root system and associated plant and soil microorganisms, in order to design new strategies for the improvement of legume nutrient uptake efficiency during heat stress.