flights <- nycflights13::flights
mpg <- ggplot2::mpg
diamonds <- ggplot2::diamonds

Plots of dataset mpg

str(mpg)
## Classes 'tbl_df', 'tbl' and 'data.frame':    234 obs. of  11 variables:
##  $ manufacturer: chr  "audi" "audi" "audi" "audi" ...
##  $ model       : chr  "a4" "a4" "a4" "a4" ...
##  $ displ       : num  1.8 1.8 2 2 2.8 2.8 3.1 1.8 1.8 2 ...
##  $ year        : int  1999 1999 2008 2008 1999 1999 2008 1999 1999 2008 ...
##  $ cyl         : int  4 4 4 4 6 6 6 4 4 4 ...
##  $ trans       : chr  "auto(l5)" "manual(m5)" "manual(m6)" "auto(av)" ...
##  $ drv         : chr  "f" "f" "f" "f" ...
##  $ cty         : int  18 21 20 21 16 18 18 18 16 20 ...
##  $ hwy         : int  29 29 31 30 26 26 27 26 25 28 ...
##  $ fl          : chr  "p" "p" "p" "p" ...
##  $ class       : chr  "compact" "compact" "compact" "compact" ...
g1 <- ggplot(data = mpg, aes(x = displ, y = hwy))
g1 + geom_point(aes(color = displ < 3 & hwy > 30), size = 3)

g1 + geom_point(aes(color = drv))

g1 + geom_point() + facet_wrap(~ drv, nrow = 1)

g1 + geom_point(aes(color = class))

g1 + geom_point() + facet_wrap(~ class, nrow = 2)

g1 + geom_point() + facet_grid(drv ~ class)

g1 + geom_point() + geom_smooth()

g1 + geom_point(aes(color = class)) + geom_smooth(se = FALSE)

g1 + geom_point(aes(color = drv)) + geom_smooth(aes(linetype = drv), se = FALSE)

g1 + geom_point(position = "jitter")

g1 + geom_point() + geom_jitter()

ggplot(mpg, aes(x = cty, y = hwy)) + geom_point(position = "jitter")

ggplot(mpg, aes(x = cty, y = hwy)) + 
        geom_point(position = "jitter") +
        geom_abline() +
        coord_fixed()

ggplot(mpg, aes(x = drv, y = hwy)) + geom_boxplot(aes(fill = class))

g4 <- ggplot(mpg, aes(x = class, y = hwy))
g4 + geom_boxplot()

g4 + geom_boxplot() + coord_flip()

bar <- ggplot(diamonds, aes(cut)) +
        geom_bar(aes(fill = cut), show.legend = FALSE, width = 1) +
        theme(aspect.ratio = 1) +
        labs(x = NULL, y = NULL)
bar + coord_flip()

bar + coord_polar()

Plots of dataset diamonds

str(diamonds)
## Classes 'tbl_df', 'tbl' and 'data.frame':    53940 obs. of  10 variables:
##  $ carat  : num  0.23 0.21 0.23 0.29 0.31 0.24 0.24 0.26 0.22 0.23 ...
##  $ cut    : Ord.factor w/ 5 levels "Fair"<"Good"<..: 5 4 2 4 2 3 3 3 1 3 ...
##  $ color  : Ord.factor w/ 7 levels "D"<"E"<"F"<"G"<..: 2 2 2 6 7 7 6 5 2 5 ...
##  $ clarity: Ord.factor w/ 8 levels "I1"<"SI2"<"SI1"<..: 2 3 5 4 2 6 7 3 4 5 ...
##  $ depth  : num  61.5 59.8 56.9 62.4 63.3 62.8 62.3 61.9 65.1 59.4 ...
##  $ table  : num  55 61 65 58 58 57 57 55 61 61 ...
##  $ price  : int  326 326 327 334 335 336 336 337 337 338 ...
##  $ x      : num  3.95 3.89 4.05 4.2 4.34 3.94 3.95 4.07 3.87 4 ...
##  $ y      : num  3.98 3.84 4.07 4.23 4.35 3.96 3.98 4.11 3.78 4.05 ...
##  $ z      : num  2.43 2.31 2.31 2.63 2.75 2.48 2.47 2.53 2.49 2.39 ...
g2 <- ggplot(data = diamonds, aes(x = cut))
g2 + geom_bar()

g2 + geom_bar(aes(y = ..prop.., group = 1))

g2 + geom_bar(aes(fill = cut))

g2 + stat_count()

g2 + geom_bar(aes(fill = clarity))

g2 + geom_bar(aes(fill = clarity), alpha = .5, position = "identity")

g2 + geom_bar(aes(color = clarity), fill = NA, position = "identity")

g2 + geom_bar(aes(fill = clarity), position = "fill")

g2 + geom_bar(aes(fill = clarity), position = "dodge")

g2 + geom_bar(aes(fill = clarity), width = 1.1) + coord_polar(theta = "y")
## Warning: position_stack requires non-overlapping x intervals

g3 <- ggplot(data = diamonds, aes(x = cut, y = depth))
g3 + geom_pointrange(stat = "summary",
                     fun.ymax = max,
                     fun.ymin = min,
                     fun.y = median, 
                     aes(color = cut))

g3 + stat_summary(fun.ymax = max,
                     fun.ymin = min,
                     fun.y = median)