3  Core Syntax of ggplot2

The general structure of a ggplot command follows this pattern:

ggplot(data = <data>, mapping = aes(x = <x>, y = <y>, <other aesthetics>)) +
  <geometric layer> +
  <optional layers for customization>

3.1 Key Components:

  1. ggplot(): Initializes the plot and specifies the dataset and mappings.
  • data: The data frame to visualize

  • aes(): Defines the mapping of variables to aesthetics like x, y, color, fill, size, etc.

  1. Geometric Layers (geom_*):
  • Add geometries that specify how the data should be represented visually
  • Examples:
    • geom_point(): Scatter plot points
    • geom_line(): Lines for trends
    • geom_boxplot(): Box plots for distributions
  1. Additional Layers:
  • Customize the plot by adding: Statistics (e.g., stat_smooth() for regression lines)
  • Facets (e.g., facet_wrap() to create subplots)
  • Themes (e.g., theme_minimal() for appearance adjustments)

3.2 The Layer System

The layer system allows you to incrementally build and customize a plot. Each “+” adds a new layer to the visualization:

  • Data layer: Specifies the dataset and variable mappings
  • Geometric layer: Defines how the data is displayed (e.g., points, bars)
  • Statistical layer: Adds computed summaries (e.g., regression lines, means)
  • Coordinate layer: Modifies scales and axis limits
  • Theme layer: Controls non-data elements (e.g., text, gridlines)

Plot can be saved as ggplot-objects adding additional layers.

3.3 Summary

Summary The layer system in ggplot2 provides flexibility and modularity, allowing you to construct detailed and visually appealing plots step-by-step. By understanding its syntax, you can adapt and customize visualizations for a wide range of data visualization needs.