Open In App

Area Line Plot in R

Last Updated : 27 Sep, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

Area line plots, commonly referred to as filled area plots, are effective data visualisation techniques in R for showing how data evolves over time. They are particularly helpful for displaying trends, distributions, and time series data. In this article, we’ll look at how to use the well-liked ggplot2 programme to generate area line plots in R.

What Are Area Line Plots

Area line plots visualize data by plotting a line connecting data points and filling the area below the line. This filled area helps highlight the magnitude of change over time or across categories. Area line plots are often used to represent cumulative data and show the distribution of values.

When to Use Area Line Plots

  1. Visualizing time series data: Area line plots are ideal for showing how data changes over time, making trends and patterns more apparent.
  2. Comparing multiple categories: Area line plots can be used to compare multiple categories or groups, showing their relative contributions to the whole.
  3. Displaying cumulative data: If you want to emphasize the cumulative effect of data, area line plots are an effective choice.

Basic Area Line Plot

R




# Create synthetic data
set.seed(123)
df <- data.frame(
  Year = 2000:2020,
  Value = cumsum(rnorm(21))
)
 
# Create a basic area line plot
ggplot(df, aes(x = Year, y = Value, fill = "Area")) +
  geom_area() +
  labs(
    title = "Basic Area Line Plot",
    x = "Year",
    y = "Cumulative Value"
  ) +
  theme_minimal()


Output:

gh

Area Line Plot in R

In this example, we create a basic area line plot using the geom_area() function. We map the Year variable to the x-axis (x) and the Value variable to the y-axis (y). The fill aesthetic is set to “Area” to specify the fill color of the area below the line. We also add a title and axis labels using the labs() function.

Stacked Area Line Plot

Stacked area line plots are used to compare the contributions of multiple categories over time. Let’s create one using sample data.

R




# Create sample data for stacked area line plot
set.seed(456)
df_stacked <- data.frame(
  Year = rep(2000:2020, each = 3),
  Category = rep(c("A", "B", "C"), times = 21),
  Value = cumsum(rnorm(63))
)
 
# Create a stacked area line plot
ggplot(df_stacked, aes(x = Year, y = Value, fill = Category)) +
  geom_area() +
  labs(
    title = "Stacked Area Line Plot",
    x = "Year",
    y = "Cumulative Value"
  ) +
  theme_minimal()


Output:

gh

Area Line Plot in R

In this example, we use a stacked area line plot to compare the contributions of three categories (A, B, C) over time. The fill aesthetic is set to the Category variable, which stacks the areas based on categories. This type of plot is useful for visualizing how different categories contribute to the cumulative value over time.

Area Line Plot with Multiple Series

We can create area line plots with multiple series, each represented by a separate line and filled area. Here’s an example with two series.

R




# Create data with multiple series
set.seed(789)
df_multiple_series <- data.frame(
  Year = 2000:2020,
  Series1 = cumsum(rnorm(21)),
  Series2 = cumsum(rnorm(21))
)
 
# Create an area line plot with multiple series
ggplot(df_multiple_series, aes(x = Year)) +
  geom_area(aes(y = Series1, fill = "Series 1"), alpha = 0.5) +
  geom_area(aes(y = Series2, fill = "Series 2"), alpha = 0.5) +
  labs(
    title = "Area Line Plot with Multiple Series",
    x = "Year",
    y = "Cumulative Value"
  ) +
  scale_fill_manual(values = c("Series 1" = "blue", "Series 2" = "red")) +
  theme_minimal()


Output:

gh

Area Line Plot in R

In this example, we create an area line plot with two series (Series 1 and Series 2). Each series is represented by a separate line and filled area. We use the alpha argument to control the transparency of the filled areas. The scale_fill_manual function is used to specify custom fill colors for the two series.

Customizing Area Line Plots

Customizing area line plots allows you to make them more visually appealing and informative. Here’s an example with various customizations.

R




# Create customized area line plot
ggplot(df, aes(x = Year, y = Value, fill = "Area")) +
  geom_area(color = "black", size = 0.5, alpha = 0.7) +
  labs(
    title = "Customized Area Line Plot",
    x = "Year",
    y = "Cumulative Value"
  ) +
  scale_fill_manual(values = c("Area" = "orange")) +
  theme_minimal() +
  theme(
    plot.title = element_text(size = 18, hjust = 0.5),
    axis.text = element_text(size = 12),
    axis.title = element_text(size = 14, face = "bold"),
    legend.title = element_blank(),
    legend.text = element_text(size = 12),
    legend.position = "top"
  )


Output:

gh

Area Line Plot in R

In this code, we customize the area line plot in several ways:

  • We change the line color to black using the color argument in geom_area.
  • Adjust the line size to 0.5 using the size argument.
  • Make the filled area slightly transparent (alpha = 0.7) to create a visually pleasing effect.
  • Customize the fill color of the area to orange using scale_fill_manual.
  • Set a minimal theme using theme_minimal to simplify the plot’s background.
  • Customize text sizes for the title, axis labels, and legend using element_text.
  • Remove the legend title using legend.title = element_blank().
  • Position the legend at the top of the plot with legend.position = “top” for better visibility.

Conclusion

Area line plots are a valuable tool for visualizing data trends and distributions, especially for time series data. With the flexibility of ggplot2, we can create customized area line plots to effectively communicate our data insights. By following best practices and tips, we can ensure that our area line plots are both informative and visually appealing.



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads