ggplot2::labs()
   get_help()
docs
The labs()
function is part of the {ggplot2}
package, which is part of the {tidyverse}
.
We use this function within {ggplot2}
plots to add labels, including the following types of labels:
Label type | Usage as argument to labs() |
---|---|
X-axis label | labs(x = "x-axis label") |
Y-axis label | labs(y = "y-axis label") |
Plot title | labs(title = "plot title") |
Plot subtitle | labs(subtitle = "plot subtitle") |
Plot caption | labs(caption = "plot caption") |
Legend title | labs(type of aesthetic in legend = "name of legend") A type of aesthetic may be fill , color , etc. |
To use this function, you need to either first load the {ggplot2}
library, or always use the function with ggplot2::labs()
notation.
# Load the library
library(ggplot2)
# Or, load the full tidyverse:
library(tidyverse)
# Or, use :: notation
::labs() ggplot2
The examples below use the msleep
dataset. Learn more about this dataset with get_help("msleep")
.
# Show the msleep dataset with head()
head(msleep)
## # A tibble: 6 × 11
## name genus vore order conservation sleep_total sleep_rem sleep_cycle awake brainwt bodywt
## <chr> <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Owl … Aotus omni Prim… <NA> 17 1.8 NA 7 0.0155 0.48
## 2 Moun… Aplo… herbi Rode… nt 14.4 2.4 NA 9.6 NA 1.35
## 3 Grea… Blar… omni Sori… lc 14.9 2.3 0.133 9.1 0.00029 0.019
## 4 Cow Bos herbi Arti… domesticated 4 0.7 0.667 20 0.423 600
## 5 Thre… Brad… herbi Pilo… <NA> 14.4 2.2 0.767 9.6 NA 3.85
## 6 Nort… Call… carni Carn… vu 8.7 1.4 0.383 15.3 NA 20.5
# A fully labeled scatterplot of awake against sleep_rem
ggplot(msleep) +
aes(x = sleep_rem, y = awake) +
geom_point() +
labs(x = "Time in REM sleep (hours)",
y = "Time spent awake (hours)",
title = "Plot of REM sleep against awake time",
subtitle = "What a great scatterplot subtitle this is!",
caption = "Captions are a good place to include the Plot Author")
# Labeling the legend created by the `color` aesthetic
# Note to remove NAs, you must manipulate the data first
ggplot(msleep) +
aes(x = sleep_rem, y = awake, color = vore) +
geom_point() +
labs(x = "Time in REM sleep (hours)",
y = "Time spent awake (hours)",
color = "Custom legend title for vore color mapping")
# Labeling the legend created by the `fill` aesthetic
# Note to remove NAs, you must manipulate the data first
ggplot(msleep) +
aes(x = sleep_rem, y = awake, fill = vore) +
geom_point(shape = 21) +
labs(x = "Time in REM sleep (hours)",
y = "Time spent awake (hours)",
fill = "Custom legend title for vore fill mapping")
## CAUTION!! This legend title is buggy and does not appear,
# since the plot doesn't contain a fill aesthetic - it contains a color
# The default legend title is used.
ggplot(msleep) +
aes(x = sleep_rem, y = awake, color = vore) +
geom_point() +
labs(x = "Time in REM sleep (hours)",
y = "Time spent awake (hours)",
fill = "This title isn't going to appear since there is no fill aes")