Directions

During ANLY 512 we will be studying the theory and practice of data visualization. We will be using R and the packages within R to assemble data and construct many different types of visualizations. We begin by studying some of the theoretical aspects of visualization. To do that we must appreciate the actual steps in the process of making a visualization.

Most of us use softare to do this and have done so for so long that we have lost an appreciation for the mechanistic steps involved in accurately graphing data. We will fix that this week by creating a series of analog (meaning you draw them by hand) graphics. The visualizations you create must be numerically and visually accurate and precisely scaled. Because of that the data sets we visualize will be small.

The final product of your homework (this file) should include scanned or photographed images for each question below and a short summary of the process.

To submit this homework you will create the document in Rstudio, using the knitr package (button included in Rstudio) and then submit the document to your Rpubs account. Once uploaded your will submit the link to that document on Moodle.

Questions

Find the mtcars data in R. This is the dataset that you will use to create your graphics. Use that data to draw by hand graphics for the next 4 questions.

library(ggplot2)
data(mtcars)
summary(mtcars)
##       mpg             cyl             disp             hp       
##  Min.   :10.40   Min.   :4.000   Min.   : 71.1   Min.   : 52.0  
##  1st Qu.:15.43   1st Qu.:4.000   1st Qu.:120.8   1st Qu.: 96.5  
##  Median :19.20   Median :6.000   Median :196.3   Median :123.0  
##  Mean   :20.09   Mean   :6.188   Mean   :230.7   Mean   :146.7  
##  3rd Qu.:22.80   3rd Qu.:8.000   3rd Qu.:326.0   3rd Qu.:180.0  
##  Max.   :33.90   Max.   :8.000   Max.   :472.0   Max.   :335.0  
##       drat             wt             qsec             vs        
##  Min.   :2.760   Min.   :1.513   Min.   :14.50   Min.   :0.0000  
##  1st Qu.:3.080   1st Qu.:2.581   1st Qu.:16.89   1st Qu.:0.0000  
##  Median :3.695   Median :3.325   Median :17.71   Median :0.0000  
##  Mean   :3.597   Mean   :3.217   Mean   :17.85   Mean   :0.4375  
##  3rd Qu.:3.920   3rd Qu.:3.610   3rd Qu.:18.90   3rd Qu.:1.0000  
##  Max.   :4.930   Max.   :5.424   Max.   :22.90   Max.   :1.0000  
##        am              gear            carb      
##  Min.   :0.0000   Min.   :3.000   Min.   :1.000  
##  1st Qu.:0.0000   1st Qu.:3.000   1st Qu.:2.000  
##  Median :0.0000   Median :4.000   Median :2.000  
##  Mean   :0.4062   Mean   :3.688   Mean   :2.812  
##  3rd Qu.:1.0000   3rd Qu.:4.000   3rd Qu.:4.000  
##  Max.   :1.0000   Max.   :5.000   Max.   :8.000
  1. Draw a pie chart showing the proportion of cars from the mtcars data set that have different carb values.
##By R
ggplot(data=mtcars, 
       aes(x = factor(1), fill = factor(carb))) + 
ylab("Proportions of cars by 'carb' value") + 
xlab("") +
geom_bar(width = 1) + 
coord_polar(theta = "y")

##By Hand
knitr::include_graphics("C:\\Users\\xierong\\Desktop\\01.png")

  1. Draw a bar graph, that shows the number of each gear type in mtcars.
##By R
ggplot(data=mtcars, aes(x=gear)) + geom_bar(stat="count")

```

##By Hand
knitr::include_graphics("C:\\Users\\xierong\\Desktop\\02.png")

3. Next show a stacked bar graph of the number of each gear type and how they are further divded out by cyl.

##By R
ggplot(mtcars, aes(x = factor(cyl), fill = factor(gear))) + 
xlab("Values of 'cyl'") + 
ylab("Values of 'count of gear'") + 
geom_bar(color="black")

```

##By Hand
knitr::include_graphics("C:\\Users\\xierong\\Desktop\\03.png")

4. Draw a scatter plot showing the relationship between wt and mpg.

##By R
ggplot(mtcars, aes(x = wt, y = mpg)) +
xlab("wt") + 
ylab("mpg") +
geom_point() +
geom_line() +
ggtitle("Relationship between 'wt' and 'mpg'") +
stat_smooth(method = "loess", formula = y ~ x, size = 1, col = "red")

```

##By Hand
knitr::include_graphics("C:\\Users\\xierong\\Desktop\\04.png")

  1. Design a visualization of your choice using the data.
##Draw a bar graph, that shows the number of each cyl type in mtcars.
ggplot(data=mtcars, aes(x=factor(cyl))) + geom_bar(stat="count")

```

##By Hand
knitr::include_graphics("C:\\Users\\xierong\\Desktop\\05.png")