[This article was first published on R – Modern Data, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
In this post we’ll use the cranlogs package to visualize the number of downloads for Plotly’s R API
library(cranlogs) library(plotly) library(zoo) # Get data df <- cran_downloads(packages = c("plotly", "ggplot2"), from = "2015-10-01", to = "2016-08-01") # Convert dates df$date <- as.Date(df$date) # Make data frame df <- data.frame(date = unique(df$date), count.plotly = subset(df, package == "plotly")$count, count.ggplot = subset(df, package == "ggplot2")$count) # Smooth data # 5 day moving averages nWidth <- 5 df <- zoo(df[,-1], order.by = df[,1]) df.smooth <- rollapply(df, width = nWidth, FUN = mean) df <- data.frame(date = index(df.smooth), count.plotly = round(df.smooth[,1],0), count.ggplot = round(df.smooth[,2],0)) plot_ly(df, x = ~date) %>% add_lines(y = ~count.plotly, fill = "tozeroy", line = list(shape = "spline"), name = "Plotly") %>% add_lines(y = ~count.ggplot, fill = "tozeroy", line = list(shape = "spline"), name = "ggplot2", yaxis = "y2", xaxis = "x2") %>% layout(yaxis = list(domain = c(0.55,1), title = "Count", anchor = "xaxis", tick = list(color = "#595959", size = 12)), yaxis2 = list(domain = c(0, 0.45), title = "Count", anchor = "xaxis2", tick = list(color = "#595959", size = 12)), xaxis = list(anchor = "yaxis", title = "Date"), xaxis2 = list(anchor = "free", title = "Date"), annotations = list( list(x = 0.05, y = 1, xref = "paper", yref = "paper", showarrow = FALSE, text = "<b>Plotly downloads</b>", = list(size = 17)), list(x = 0.05, y = 0.45, xref = "paper", yref = "paper", showarrow = FALSE, text = "<b>ggplot2 downloads</b>", = list(size = 17))))
To leave a comment for the author, please follow the link and comment on their blog: R – Modern Data.
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.