Explore aesthetics such as
In this module, we will focus on the aesthetics i.e. color, shape, size, alpha, line type, line width etc. We can map these to variables or specify values for them. If we want to map the above to variables, we have to specify them within the aes()
function. We will look at both methods.
library(ggplot2)
library(dplyr)
library(tidyr)
ggplot(mtcars, aes(x = disp, y = mpg, color = factor(cyl))) +
geom_point()
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(aes(color = factor(cyl)))
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(color = 'blue')
ggplot(mtcars, aes(x = disp, y = mpg, shape = factor(cyl))) +
geom_point()
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(aes(shape = factor(cyl)))
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(shape = 5)
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(shape = 5, color = 'blue')
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(shape = 5, fill = 'blue')
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(shape = 22, fill = 'blue')
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(shape = 22, color = 'blue')
ggplot(mtcars, aes(x = disp, y = mpg, size = disp)) +
geom_point()
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(size = 4)
ggplot(mtcars, aes(x = disp, y = mpg)) +
geom_point(aes(alpha = factor(cyl)), color = 'blue')
Before we wrap up, let us quickly see how we can map aesthetics to variables for
ecom <- readr::read_csv('https://raw.githubusercontent.com/rsquaredacademy/datasets/master/web.csv')
## # A tibble: 1,000 x 11
## id referrer device bouncers n_visit n_pages duration country
## <int> <chr> <chr> <chr> <int> <dbl> <dbl> <chr>
## 1 1 google laptop true 10 1 693 Czech Republic
## 2 2 yahoo tablet true 9 1 459 Yemen
## 3 3 direct laptop true 0 1 996 Brazil
## 4 4 bing tablet false 3 18 468 China
## 5 5 yahoo mobile true 9 1 955 Poland
## 6 6 yahoo laptop false 5 5 135 South Africa
## 7 7 yahoo mobile true 10 1 75 Bangladesh
## 8 8 direct mobile true 10 1 908 Indonesia
## 9 9 bing mobile false 3 19 209 Netherlands
## 10 10 google mobile true 6 1 208 Czech Republic
## # ... with 990 more rows, and 3 more variables: purchase <chr>,
## # order_items <dbl>, order_value <dbl>
ggplot(ecom, aes(device, fill = purchase)) +
geom_bar()
ggplot(ecom) +
geom_histogram(aes(duration, fill = purchase), bins = 10)
ggplot(ecom) +
geom_boxplot(aes(device, duration, fill = purchase))