Visual 1

This graphic is a traditional stacked bar chart. This graphic works on the mpg dataset, which is built into the ggplot2 library. This means that you can access it simply by ggplot(mpg, ….). There is one modification above default in this graphic, I renamed the legend for more clarity.

data(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" ...
##start with basic plot with no y in order to show count
p<-ggplot(mpg,aes(class))

## fill in the graph with trans variable
p+geom_bar(aes(fill=trans))

Visual2

This boxplot is also built using the mpg dataset. Notice the changes in axis labels, and an altered theme_XXXX

##converted hwy to numeric as it was previously a factor
mpg$hwy<-as.numeric(as.character(mpg$hwy))

#converted manufacturer to factor since it is the categorical variable
mpg$manufacturer<-factor(mpg$manufacturer)

#flipped the boxplot since i reversed the x and y axis
f<-ggplot(mpg, aes(manufacturer,hwy))+geom_boxplot() + coord_flip()+theme_classic()

#changed titles of the x and y axis
f1<-f+labs(y="Highway Fuel Efficiency (miles/gallon)", x="Vehicle Manufacturer")
f1

Visual 3

This graphic is built with another dataset diamonds a dataset also built into the ggplot2 package. For this one I used an additional package called library(ggthemes) check it out to reproduce this view.

data(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 ...
#View(diamonds)

library(ggthemes)

#drawing the density plot + title
g<-ggplot(diamonds, aes(x=price, fill=cut,color=cut)) + geom_density(alpha=0.2) +labs(title="Diamond Price Density", x="Diamond Price(USD)", y="Density")

##changing appearance of the legend labels
g1<-g+theme(legend.position ="top", legend.text= element_text(face= "bold"))

##changing appearance of the Axis labels
g2<-g1+theme(plot.title=element_text(face= "bold"), axis.title.x=element_text(face="bold"), axis.title.y=element_text(face="bold"))

##changes the axis ticks
g3<-g2+theme(axis.text.x=element_text(face="bold"),axis.text.y = element_text(face = "bold"))

#adding in economist theme
g4<-g3+theme_economist()
g4

Visual 4

For this plot we are changing vis idioms to a scatter plot framework. Additionally, I am using ggplot2 package to fit a linear model to the data all within the plot framework. Three are edited labels and theme modifications as well.

data(iris)
str(iris)
## 'data.frame':    150 obs. of  5 variables:
##  $ Sepal.Length: num  5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
##  $ Sepal.Width : num  3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
##  $ Petal.Length: num  1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
##  $ Petal.Width : num  0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
##  $ Species     : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
d<-ggplot(iris, aes(x=Sepal.Length, y=Petal.Length)) + geom_point()

##adding in the title and axis labels
d1<-d+labs(title="Relationship between Petal and Sepal Length", x="Iris Sepal Length", y="Iris Petal Length")

#add in regression lines
d2<-d1+geom_smooth(method=lm)+theme_minimal()
d2

Visual 5

Finally, in this vis I extend on the last example, by plotting the same data but using an additional channel to communicate species level differences. Again I fit a linear model to the data but this time one for each species, and add additional theme and labeling modicitations.

# Change point shapes by the levels of Species
data(iris)
str(iris)
## 'data.frame':    150 obs. of  5 variables:
##  $ Sepal.Length: num  5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
##  $ Sepal.Width : num  3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
##  $ Petal.Length: num  1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
##  $ Petal.Width : num  0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
##  $ Species     : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
##Creates scatter plot
d7<-ggplot(iris, aes(x=Sepal.Length, y=Petal.Length, color=Species)) +geom_point()


#addin regression lines
#modify axis lines to be blank
d8<-d7+geom_smooth(method=lm,se=FALSE)


##adding in the title, subtitle and axis labels
#adding in legend and shifting it to bottom position
d9<-d8+labs(title="Relationship between Petal and Sepal Length",subtitle= "Species level comparison", x="Iris Sepal Length", y="Iris Petal Length") +theme(legend.position ="bottom", legend.text= element_text(face= "bold"))


#filled background panel to white
##removed border lines
d10<-d9+theme(panel.border=element_blank(),panel.background = element_rect(fill="white"))
d10