Chapter 3 Temporal Analysis for evidence maps

Temporal analysis is a critical aspect of evidence maps and meta-analyses, allowing researchers to understand how knowledge and research trends evolve over time. This analysis can reveal patterns in the accumulation of evidence, shifts in research focus, and emerging areas of interest. By systematically examining temporal trends, researchers can identify gaps in the literature, inform future research directions, and contextualize findings within broader historical or socio-political frameworks.

However, it is essential to approach temporal analysis with caution. As the volume of published literature continues to grow, there is a risk of drawing hasty conclusions based solely on trends in publication counts. Researchers must critically evaluate the context behind the data, considering factors such as changes in research funding, emerging technologies, or shifts in societal concerns that may influence publication rates.

3.2 Example in R

To illustrate temporal analysis in R, we will use the ggplot2 and tidyverse packages to create both cumulative sum and count graphs. Below is an example of how to plot these two types of graphs using fictional publication data.

3.2.0.1 Initial Data Manipulation

# Install necessary packages (if not already installed)
# install.packages("ggplot2")
# install.packages("tidyverse")

# Load necessary libraries
library(ggplot2)
library(tidyverse, warn.conflicts = FALSE)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ lubridate 1.9.3     ✔ tibble    3.2.1
## ✔ purrr     1.0.2     ✔ tidyr     1.3.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
# Merge the outcome dataset with metadata
# TAB should be your combined dataset, with relevant variables
TAB <- left_join(Outcome, Meta_Data)
## Joining with `by = join_by(ID, Authors, Title, Year)`

3.2.1 Count Graph

This graph visualizes the count of different studies published each year. It uses a bar graph to display the number of studies per publication year, making it easy to compare across years

# Count Graph
count_data <- TAB %>%
  group_by(Year) %>%  # Group data by publication year
  summarise(Count = n(), .groups = "drop")  # Count studies per year

# Plot the count graph
ggplot(count_data, aes(x = Year, y = Count)) +
  geom_bar(stat = "identity", fill = "steelblue") +  # Create a bar graph
  labs(title = "Number of Studies Published per Year",
       x = "Publication Year",
       y = "Number of Studies") +
  theme_minimal()  # Use a minimal theme for clarity

3.2.2 Cumulative Sum Graph

This graph displays the cumulative count of studies published over the years. It helps visualize how the total number of studies increases as time progresses.

# Cumulative Sum Graph
cumulative_data <- count_data %>%
  arrange(Year) %>%  # Ensure data is sorted by year
  mutate(Cumulative = cumsum(Count))  # Calculate cumulative count

# Plot the cumulative sum graph
ggplot(cumulative_data, aes(x = Year, y = Cumulative)) +
  geom_line(size = 1, color = "darkgreen") +  # Create a line graph
  labs(title = "Cumulative Count of Studies Published",
       x = "Year",
       y = "Cumulative Count of Studies") +
  theme_minimal()  # Use a minimal theme for clarity
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.

3.2.3 Grouped Graph by categories

This graph shows the cumulative count of studies based on different crop types. It allows for comparison of study trends across various crop systems.

# Grouped Graph by Crop
grouped_data <- TAB %>%
 group_by(Year, System_C) %>% summarise(Count = n(),.groups = "drop") %>%
  arrange(Year) %>%
  group_by(System_C) %>%
mutate(Cumulative = cumsum(Count)) %>% 
  ungroup()

# Plot the grouped cumulative count graph

ggplot(grouped_data, aes(x = Year, y = Cumulative, color = System_C, group = System_C)) +
  geom_line(size = 1) + 
  geom_point(size = 2) + 
  labs(title = "Cumulative Count of Studies per Control Type", 
       x = "Year", 
       y = "Cumulative Count of Studies") +
  theme_minimal()

3.3 Brief Note on Cumulative Meta-Analyses

Cumulative meta-analyses are another important aspect of temporal analysis. They allow researchers to assess how the effect sizes of interventions or phenomena change as new studies are added over time. This approach can provide valuable insights into the robustness of findings and help track the evolution of evidence on specific topics. Cumulative meta-analyses can further enrich evidence maps by providing a more nuanced understanding of how knowledge accumulates and shifts within a research domain.

By integrating temporal analysis into evidence maps and meta-analyses, researchers can enhance the depth and relevance of their findings, ultimately contributing to a more robust and informed understanding of research trends and their implications.