library(devtools)
library(ggplot2)
head(mtcars)
##                    mpg cyl disp  hp drat    wt  qsec vs am gear carb
## Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
## Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
## Datsun 710        22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
## Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
## Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2
## Valiant           18.1   6  225 105 2.76 3.460 20.22  1  0    3    1
mpg_disp <- ggplot(data = mtcars, aes(x = mpg, y = disp)) +
  geom_point() + geom_smooth()
mpg_disp
## `geom_smooth()` using method = 'loess'

mpg_disp + coord_cartesian(xlim = c(15, 25))
## `geom_smooth()` using method = 'loess'

mpg_disp + scale_x_continuous(limits = c(15, 25))
## `geom_smooth()` using method = 'loess'
## Warning: Removed 11 rows containing non-finite values (stat_smooth).
## Warning: Removed 11 rows containing missing values (geom_point).

pie <- ggplot(mtcars, aes(x = factor(1), fill = factor(cyl))) +
 geom_bar(width = 1)
pie

pie + coord_polar(theta = "y")

library(dplyr)
## Warning: Installed Rcpp (0.12.12) different from Rcpp used to build dplyr (0.12.11).
## Please reinstall dplyr to avoid random crashes or undefined behavior.
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
percentages <- mtcars %>% group_by(cyl) %>% 
  summarize(n = n()) %>%
  mutate(percent = n * 100 / sum(n), 
         label_position = cumsum(n) - n/2)
pie2 <- ggplot(percentages, aes(x = "", y = n, fill = cyl)) +
  geom_bar(width = 1, stat = "identity") +
  geom_text(aes(y = label_position, label = paste(c(round(percent)), 
                                                          "%", sep = "")))
pie2

percentages <- mtcars %>% group_by(cyl) %>% 
  summarize(n = n()) %>%
  mutate(percent = n * 100 / sum(n), 
         label_position = cumsum(n) - n/2)
pie2 <- ggplot(percentages, aes(x = "", y = n, fill = factor(cyl))) +
  geom_bar(width = 1, stat = "identity") +
  geom_text(aes(y = label_position, label = paste(c(round(percent)), 
                                                          "%", sep = "")))
pie2

percentages <- mtcars %>% group_by(cyl) %>% 
  summarize(n = n()) %>% arrange(desc(cyl)) %>% 
  mutate(percent = n * 100 / sum(n), 
         label_position = cumsum(n) - n/2, reorder(cyl, n))
pie2 <- ggplot(percentages, aes(x = "", y = n, fill = factor(cyl))) +
          geom_bar(width = 1, stat = "identity") +
          geom_text(aes(y = label_position, label = paste(c(round(percent)), 
                                                          "%", sep = "")))
pie2

pie2 + coord_polar(theta = "y")

sbar <- ggplot(mpg, aes(x = class)) +
  geom_bar(aes(fill = drv))
sbar

sbar <- ggplot(mpg, aes(x = factor(class), fill = factor(drv))) +
  geom_bar(position = position_dodge())
sbar

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

library(ggthemes)
mpg_class + theme_economist()

mpg_class + theme_economist() + scale_fill_economist()

mpg_class + theme_few() + scale_fill_few()

mpg_class + theme_excel() + scale_fill_excel()

library(RColorBrewer)
display.brewer.all()

mpg_class + theme_few() + scale_fill_brewer("Accent")