Mapping color, shape, and size to a variable
We saw how to map a color to a categorical variable using qplot
. Now we map symbol color to the three levels of ETH
using ggplot
. In ggplot
, we map color, size, and shape within aes()
; also, as we did in qplot
, we select our own color scheme using scale_color_manual()
, as follows:
P + geom_point(aes(color = factor(ETH)), size=I(5)) + scale_color_manual(values = c("red", "yellow", "blue"))
Now the scatterplot looks like this:
![](https://static.packt-cdn.com/products/9781783554553/graphics/4553OS_04_05.jpg)
Each level of ETH
now has a different color. In ggplot
, we can also map symbol size and shape to factor levels, again using aes()
. Try the following code yourself:
P + geom_point(aes(size = factor(ETH)))
You will get this scatterplot:
![](https://static.packt-cdn.com/products/9781783554553/graphics/4553OS_04_06.jpg)
Another way of mapping symbol size is through scale_size_area()
. Try the following code yourself:
P + geom_point(aes(size = WEIGHT_2)) + scale_size_area()
The scale_size_area()
layer maps symbol area onto continuous variables by dividing the continuous variable into levels. Try the following syntax...