-
Notifications
You must be signed in to change notification settings - Fork 2
/
11-colors-scales-legends.Rmd
61 lines (40 loc) · 1.64 KB
/
11-colors-scales-legends.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# Colour scales and legends
```{r, include=FALSE}
library(tidyverse)
```
## Exercises
```{r}
drv_labels <- c("4" = "4wd", "f" = "fwd", "r" = "rwd")
ggplot(mpg, aes(displ, hwy)) +
geom_point(aes(colour = drv)) +
scale_colour_discrete(labels = drv_labels)
```
- We store the labels inside `drv_labels` and use it in `scale_colour_discrete()`
## Exercises
**1.** How do you make legends appear to the left of the plot?
`
- `theme(legend.position = "left")` make legends appear to the left of the plot.
- Other options: `theme(legend.position = "right")`, `theme(legend.position = "bottom")`, and `theme(legend.position = "none")`
<br>
**2.** What's gone wrong with this plot? How could you fix it?
- There are two separate legends for the same variable (`drv`). We need to combine these two legends into one. To do this, both `color` and `shape` need to be given shape specifications.
```{r}
ggplot(mpg, aes(displ, hwy)) +
geom_point(aes(colour = drv, shape = drv)) +
scale_colour_discrete("Drive train",
breaks = c("4", "f", "r"),
labels = c("4-wheel", "front", "rear")) +
scale_shape_discrete("Drive train",
breaks = c("4", "f", "r"),
labels = c("4-wheel", "front", "rear"))
```
<br>
**3.**
```{r}
ggplot(mpg, aes(displ, hwy, colour = class)) +
geom_point(show.legend = FALSE) +
geom_smooth(method = "lm", se = FALSE) +
theme(legend.position = "bottom") +
guides(colour = guide_legend(nrow = 1))
```
> Note: The answers to these "recreate the code for this plot" questions are provided in the source code of the book.