This page is for the Coursera Data Science Specialization, Course 9: Developing Data Products (Week3).
Assignment: Create a web page presentation that features a plot created with Plotly. Host your webpage on either GitHub Pages, RPubs, or NeoCities. Your webpage must contain the date that you created the document, and it must contain a plot created with Plotly.
In order to illustrate the use of plotly we will use the mtcars dataset
if(require(plotly)==FALSE)(install.packages("plotly")); library(plotly)
if(require(tidyverse)==FALSE)(install.packages("tidyverse")); library(tidyverse)
df<-mtcars
summary(df)
## 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
# Get Manufacturer
df$brand <- sapply(strsplit(rownames(df), " "), "[[", 1)
prep <- df %>%
group_by(brand) %>%
summarize(count = n())
# Get Manufacturer
df$brand <- sapply(strsplit(rownames(df), " "), "[[", 1)
prep <- df %>%
group_by(brand) %>%
summarize(count = n())
head(prep)
## # A tibble: 6 x 2
## brand count
## <chr> <int>
## 1 AMC 1
## 2 Cadillac 1
## 3 Camaro 1
## 4 Chrysler 1
## 5 Datsun 1
## 6 Dodge 1
plotDonut<- prep%>%
plot_ly(labels = ~brand, values = ~count) %>%
add_pie(hole = 0.5) %>%
layout(title = "Usage of Plotly with a donut chart", showlegend = F,
xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
plotDonut
## Warning: package 'bindrcpp' was built under R version 3.4.4