-
-
Save rlugojr/78d7d790c6710fb42cd18ed85e77d643 to your computer and use it in GitHub Desktop.
Plot Weekly or Monthly Totals in R
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(ggplot2) | |
library(scales) | |
# load data: | |
log <- data.frame(Date = c("2013/05/25","2013/05/28","2013/05/31","2013/06/01","2013/06/02","2013/06/05","2013/06/07"), | |
Quantity = c(9,1,15,4,5,17,18)) | |
log | |
str(log) | |
# convert date variable from factor to date format: | |
log$Date <- as.Date(log$Date, | |
"%Y/%m/%d") # tabulate all the options here | |
str(log) | |
# create variables of the week and month of each observation: | |
log$Month <- as.Date(cut(log$Date, | |
breaks = "month")) | |
log$Week <- as.Date(cut(log$Date, | |
breaks = "week", | |
start.on.monday = FALSE)) # changes weekly break point to Sunday | |
log | |
# graph by month: | |
ggplot(data = log, | |
aes(Month, Quantity)) + | |
stat_summary(fun.y = sum, # adds up all observations for the month | |
geom = "bar") + # or "line" | |
scale_x_date( | |
labels = date_format("%Y-%m"), | |
breaks = "1 month") # custom x-axis labels | |
# graph by week: | |
ggplot(data = log, | |
aes(Week, Quantity)) + | |
stat_summary(fun.y = sum, # adds up all observations for the week | |
geom = "bar") + # or "line" | |
scale_x_date( | |
labels = date_format("%Y-%m-%d"), | |
breaks = "1 week") # custom x-axis labels |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment