# Graphics in R (Gallery with Examples)

This page shows an overview of (almost all) different types of graphics, plots, charts, diagrams, and figures of the R programming language.

Here is a **list of all graph types** that are illustrated in this article:

- Barplot
- Boxplot
- Density Plot
- Heatmap
- Histogram
- Pairs Plot
- Polygon Plot
- QQplot
- Scatterplot
- Venn Diagram

Each type of graphic is illustrated with some **basic example code**. These codes are based on the following data:

set.seed(123) # Set seed for reproducibility x <- rnorm(30) # Create x variable y <- x + rnorm(30) # Create correlated y variable |

set.seed(123) # Set seed for reproducibility x <- rnorm(30) # Create x variable y <- x + rnorm(30) # Create correlated y variable

In each section, you can find additional resources on how to create and modify these graphic types yourself (including reproducible R syntax and many examples).

In addition, this article contains a list of tutorials for general **plot modifications** in:

So without further ado, let’s dive in!

## Barplot

**Barplot Definition:** A barplot (or barchart) illustrates the association between a numeric and a categorical variable. The barplot represents each category as a bar and reflects the corresponding numeric value with the bar’s size.

The following R syntax shows how to draw a basic barplot in R:

barplot(x) # Draw barplot in R |

barplot(x) # Draw barplot in R

Our example barplot looks a follows:

**Advanced Barplots:** Find some advanced barplots below. Click on the images to get more information and example R codes for each of the barplots.

**Barplot Resources:** There a no further resources yet.

## Boxplot

**Boxplot Definition:** A boxplot (or box-and-whisker plot) displays the distribution of a numerical variable based on five summary statistics: minimum non-outlier; first quartile; median; third quartile; and maximum non-outlier. Furthermore, boxplots show the positioning of outliers and whether the data is skewed.

The following R syntax shows how to draw a basic boxplot in R:

boxplot(x) # Draw boxplot in R |

boxplot(x) # Draw boxplot in R

**Advanced Boxplots:** Find some advanced boxplots below. Click on the images to get more information and example R codes for each of the boxplots.

**Boxplot Resources:** Find some further resources on the creation of boxplots below.

## Density Plot

**Density Plot Definition:** A density plot (or kernel density plot; density trace graph) shows the distribution of a numerical variable over a continuous interval. Peaks of a density plot visualize where the values of numerical variables are concentrated.

The following R syntax shows how to draw a basic density plot in R:

plot(density(x)) # Draw density plot in R |

plot(density(x)) # Draw density plot in R

**Advanced Density Plots:** Find some advanced density plots below. Click on the images to get more information and example R codes for each of the density plots.

**Density Plot Resources:** Find some further resources on the creation of density plots below.

## Heatmap

**Heatmap Definition:** A heatmap (or shading matrix) visualizes individual values of a matrix with colors. More common values are typically indicated by brighter reddish colors and less common values are typically indicated by darker colors.

The following R syntax shows how to draw a basic heatmap in R:

heatmap(cbind(x, y)) # Draw heatmap in R |

heatmap(cbind(x, y)) # Draw heatmap in R

**Advanced Heatmaps:** There are no advanced heatmaps yet.

**Heatmap Resources:** There a no further resources yet.

## Histogram

**Histogram Definition:** A histogram groups continuous data into ranges and plots this data as bars. The height of each bar shows the amount of observations within each range.

The following R syntax shows how to draw a basic histogram in R:

hist(x) # Draw histogram in R |

hist(x) # Draw histogram in R

**Advanced Histograms:** There are no advanced histograms yet.

**Histogram Resources:** There a no further resources yet.

## Pairs Plot

**Pairs Plot Definition:** A pairs plot is a plot matrix, consisting of scatterplots for each variable-combination of a data frame.

The following R syntax shows how to draw a basic pairs plot in R:

pairs(data.frame(x, y)) # Draw pairs plot in R |

pairs(data.frame(x, y)) # Draw pairs plot in R

**Advanced Pairs Plots:** Find some advanced pairs plots below. Click on the images to get more information and example R codes for each of the pairs plots.

**Pairs Plot Resources:** Find some further resources on the creation of pairs plots below.

## Polygon Plot

**Polygon Plot Definition:** A polygon plot displays a plane geometric figure (i.e. a polygon) within the plot.

The following R syntax shows how to draw a basic polygon plot in R:

plot(1, 1, # Draw polygon plot in R col = "white", xlab = "X", ylab = "Y") polygon(x = c(0.7, 1.3, 1.3, 0.8), y = c(0.6, 1.0, 1.4, 1.3), col = "#353436") |

plot(1, 1, # Draw polygon plot in R col = "white", xlab = "X", ylab = "Y") polygon(x = c(0.7, 1.3, 1.3, 0.8), y = c(0.6, 1.0, 1.4, 1.3), col = "#353436")

**Advanced Polygon Plots:** Find some advanced polygon plots below. Click on the images to get more information and example R codes for each of the polygon plots.

**Polygon Plot Resources:** Find some further resources on the creation of polygon plots below.

## QQplot

**QQplot Definition:** A QQplot (or Quantile-Quantile plot; Quantile-Quantile diagram) determines whether two data sources come from a common distribution. QQplots draw the quantiles of the two numerical data sources against each other. If both data sources come from the same distribution, the points fall on a 45 degree angle.

The following R syntax shows how to draw a basic QQplot in R:

qqplot(x, y) # Draw QQplot in R |

qqplot(x, y) # Draw QQplot in R

**Advanced QQplots:** There are no advanced QQplots yet.

**QQplot Resources:** Find some further resources on the creation of QQplots below.

## Scatterplot

**Scatterplot Definition:** A scatterplot (or scatter plot; scatter graph; scatter chart; scattergram; scatter diagram) displays two numerical variables with points, whereby each point represents the value of one variable on the x-axis and the value of the other variable on the y-axis.

The following R syntax shows how to draw a basic scatterplot in R:

plot(x, y) # Draw scatterplot in R |

plot(x, y) # Draw scatterplot in R

**Advanced Scatterplots:** Find some advanced scatterplots below. Click on the images to get more information and example R codes for each of the scatterplots.

**Scatterplot Resources:** Find some further resources on the creation of scatterplots below.

- Smooth Scatterplots with lowess Smoothing Function
- Draw Cumulative Sum in Scatterplot
- Plot of Empirical Cumulative Distribution Function

## Venn Diagram

**Venn Diagram Definition:** A venn diagram (or primary diagram; set diagram; logic diagram) illustrates all possible logical relations between certain data characteristics. Each characteristic is represented as a circle, whereby overlapping parts of the circles illustrate elements that have both characteristics at the same time.

The following R syntax shows how to draw a basic venn diagram in R:

install.packages("VennDiagram") # Install VennDiagram package library("VennDiagram") # Load VennDiagram package plot.new() # Draw empty plot draw.single.venn(area = 10) # Draw venn diagram |

install.packages("VennDiagram") # Install VennDiagram package library("VennDiagram") # Load VennDiagram package plot.new() # Draw empty plot draw.single.venn(area = 10) # Draw venn diagram

**Advanced Venn Diagrams:** There are no advanced venn diagrams yet.

**Venn Diagram Resources:** There a no further resources yet.

## General Modification of Plots

In the previous part of this article, I have shown you many different **types of plots**. However, there are plenty of programming tricks for the modification of plots in general. In the following, you will find a list of tutorials that explain such general modifications of plots in R.

### Base R Plots

- Draw Multiple Graphs to One Plot
- Set Aspect Ratio of Plot
- Create Pretty Axis Labels
- Draw Line Segment Between Points

### ggplot2

- Adjust Space Between ggplot2 Axis Labels and Plot Area
- Change Legend Title in ggplot2
- Change Position of ggplot Title
- Remove Legend in ggplot2
- Rotate ggplot2 Axis Labels
- Set Axis Limits in ggplot2 R Plot

## Learn More About Plots in R

This tutorial showed an overview of many different graphics and plots of the R programming language. If you want to learn more details about the creation of plots in R, I can recommend the following YouTube video of the DataCamp YouTube channel:

If you want to learn more about the R programming language in general, you could have a look at the following two links. They show a list of useful R functions…

… and give an overview of all R programming tutorials on this website:

I hope you liked this gallery of R graphics! If you have further questions or any kind of feedback, don’t hesitate to let me know in the comments below.

Also, don’t forget to subscribe to my free statistics newsletter for regular updates on programming and statistics!

### Subscribe to my free statistics newsletter: