R 使用ggplot2绘制随时间变化的多个频率

R 使用ggplot2绘制随时间变化的多个频率,r,ggplot2,reshape,R,Ggplot2,Reshape,随着时间的推移,我无法按组绘制一个变量的频率。具体地说,我想画一个线图,其中x轴是月份和年份,y轴是每个月份和年份的值频率,每个组由一种颜色表示。这就是我的代码的样子: library(reshape2) library(ggplot2 r_treat<-time[,c(4,10)] risk_treat <- melt(r_treat, id.vars="Risk_Class", variable.name="administered_date") ggplot(data=ris

随着时间的推移,我无法按组绘制一个变量的频率。具体地说,我想画一个线图,其中x轴是月份和年份,y轴是每个月份和年份的值频率,每个组由一种颜色表示。这就是我的代码的样子:

library(reshape2)
library(ggplot2
r_treat<-time[,c(4,10)]
risk_treat <- melt(r_treat, id.vars="Risk_Class", variable.name="administered_date")

ggplot(data=risk_treat, aes(x=value, y=value, group = Risk_Class, colour = Risk_Class)) + geom_line() + geom_point( size=4, shape=21, fill="white")

我在
yearmon
格式上遇到了一些问题,所以我将事情切换到了一个简单的
Date

## Change formatting to date class
df$value <- yearmon(df$value)
df$date <- as.Date(paste('01', df$value), format='%d %b %Y')

## Get counts for each risk class on each date
frequencies <- with(df, table(Risk_Class, date))
frequencies <- as.data.frame(frequecies)
frequences$date <- as.Date(frequencies$date)

## Plot frequencies by date
ggplot(frequencies, aes(date, Freq, group = Risk_Class, colour = Risk_Class)) + 
       geom_line() + 
       geom_point(size = 4, shape = 21, fill = "white")

我改进并纠正了

df=structure(list(Risk_Class = c("Medium", "Medium", "Medium", "Low", 
    "Low", "Low", "Low", "High", "High", "High", "Low", "Medium", 
    "High", "High", "High", "High", "High", "High", "High", "High", 
    "High", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "High", "High", "High", "Medium", "Medium", "Medium", 
    "Medium", "Medium", "Medium", "High", "High", "High", "High", 
    "High", "High", "High", "High", "High", "High", "High", "High", 
    "High", "High", "High", "High", "Medium", "Medium", "Medium", 
    "High", "High", "High", "Medium", "Medium", "Medium", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "High", "High", "High", 
    "High", "High", "High", "High", "High", "High", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Medium", "High", "High", 
    "Medium", "Medium", "Medium", "High", "High", "High", "Low", 
    "Low", "Low", "Low", "High", "High", "High", "Low", "Low", "Low", 
    "High", "High", "High", "High", "Low", "Low", "Low", "Low", "Low", 
    "High", "High", "High", "High", "High", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "High", "High", "High", "High", "High", "High", "High", 
    "Medium", "High", "High", "High", "High", "High", "Medium", "Low", 
    "Low", "Low", "Medium", "Medium", "Medium", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "High", "Medium", "Medium", "Medium", 
    "Medium", "Medium", "High", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Medium", "Medium", "Medium", "Medium", 
    "Medium", "Low", "Low", "High", "High", "High", "High", "High", 
    "High", "High", "High", "High", "High", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Medium", "Medium", 
    "Medium", "Low", "Low", "Medium", "Medium", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "High", 
    "High", "High", "High", "High", "High", "Low", "Low", "High", 
    "High", "High", "High", "High", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Medium", "Low", "Low", 
    "Low", "Low", "Low", "Medium", "Medium", "Medium", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "High", "High", "High", "High", "Low", "Low", 
    "Low", "Medium", "Low", "Low", "Low", "Low", "Low", "Low"), administered_date = structure(c(1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "administered_date", class = "factor"), 
        value = structure(c(2015, 2015.41666666667, 2014.91666666667, 
        2014, 2014.5, 2012.41666666667, 2013.66666666667, 2015.75, 
        2011.75, 2014.83333333333, 2014.25, 2013, 2013.83333333333, 
        2013.83333333333, 2013.91666666667, 2013.91666666667, 2014.75, 
        2014.75, 2013.25, 2014.83333333333, 2015.5, 2010.66666666667, 
        2015.83333333333, 2014.66666666667, NA, 2011.58333333333, 
        2013.5, 2013.33333333333, 2015.83333333333, 2015.33333333333, 
        2015.75, 2014, 2015.33333333333, 2015.33333333333, 2013.66666666667, 
        2013.66666666667, 2015.83333333333, 2015.83333333333, 2013.16666666667, 
        2013.16666666667, 2015.41666666667, 2015.41666666667, 2012.58333333333, 
        2012.58333333333, 2014.83333333333, 2014.83333333333, 2015, 
        2015, 2013, 2015.5, 2015.75, 2012.25, 2020.66666666667, 2013.16666666667, 
        2009.58333333333, NA, 2012.25, 2014.08333333333, 2015.83333333333, 
        2014.08333333333, NA, 2014.08333333333, 2015.08333333333, 
        2014.91666666667, 2015.75, 2014.08333333333, 2015.41666666667, 
        2014.75, 2015.33333333333, 2014.58333333333, 2015, 2013, 
        2014.58333333333, 2014.25, 2013.25, 2015.75, 2013.75, 2014.75, 
        2013.5, 2015.83333333333, 2013, 2015.58333333333, 2014.33333333333, 
        2015.5, 2014.91666666667, 2013.58333333333, 2013.41666666667, 
        2014.16666666667, 2015.75, 2015, 2014.08333333333, 2015.41666666667, 
        2014.58333333333, 2012.91666666667, 2014.41666666667, 2015.16666666667, 
        2015.08333333333, 2013.83333333333, 2013.41666666667, 2013.91666666667, 
        2015.83333333333, 2015.75, 2013.33333333333, 2014.66666666667, 
        2014.25, 2014.91666666667, 2015.33333333333, 2014.33333333333, 
        2014.58333333333, 2014.33333333333, 2014.33333333333, 2014.25, 
        2015.83333333333, 2014.16666666667, 2014.75, 2012.41666666667, 
        2013.5, 2015.5, 2014.08333333333, 2013.25, 2015.5, 2013, 
        2012.66666666667, 2015.16666666667, 2012.33333333333, 2013.41666666667, 
        2015.16666666667, 2015.16666666667, 2015.25, 2011.66666666667, 
        2015.08333333333, 2014.41666666667, 2012.91666666667, 2014.66666666667, 
        2013.16666666667, 2015.16666666667, 2013.58333333333, 2014, 
        2011.75, 2015.75, 2015.58333333333, 2011.5, 2014.91666666667, 
        2013.25, 2013.33333333333, 2005.25, 2011, 2011.83333333333, 
        2013.16666666667, 2013.91666666667, 2015.66666666667, 2014.58333333333, 
        2015.75, 2015.5, 2012.75, 2014, 2012.91666666667, 2015.66666666667, 
        2015.58333333333, 2013.08333333333, 2012.5, 2012.5, 2011.83333333333, 
        2015.66666666667, 2014.41666666667, 2015.33333333333, 2015.66666666667, 
        2013.66666666667, 2015.5, 2015.5, 2013.5, 2012.25, 2013.58333333333, 
        2015, 2015.25, 2019.25, 2013.91666666667, 2014.66666666667, 
        2015.5, 2014.41666666667, 2013.08333333333, 2013.41666666667, 
        2014.83333333333, 2014.25, 2013.41666666667, 2013.5, 2014.83333333333, 
        2015.5, 2013.75, 2014.16666666667, 2014.66666666667, 2025.66666666667, 
        2012.41666666667, 2014.66666666667, 2014.66666666667, 2013.5, 
        2013.5, 2013.25, 2014, 2014.16666666667, 2012.83333333333, 
        2013.41666666667, 2015.58333333333, 2015.16666666667, 2014.5, 
        2014.5, 2013.5, 2015.16666666667, 2014.25, 2015.66666666667, 
        2013.25, 2014.33333333333, 2014.91666666667, 2013.16666666667, 
        2014.08333333333, 2015.08333333333, 2014.75, 2012.75, 2013.41666666667, 
        2012.08333333333, 2015.5, 2005.58333333333, 2014.75, 2013.25, 
        2015.83333333333, 2014, 2013.66666666667, 2015.5, 2012.25, 
        2012.33333333333, 2015.83333333333, 2013.75, 2012.66666666667, 
        2012.41666666667, 2014.83333333333, 2012.33333333333, 2013.58333333333, 
        2014.33333333333, 2015.5, 2013.83333333333, 2014.25, 2013.91666666667, 
        2014.16666666667, 2014.66666666667, 2013.66666666667, 2012.5, 
        2015.16666666667, 2009.5, 2015.83333333333, 2014, 2014.33333333333, 
        2014.41666666667, 2013.91666666667, 2013.33333333333, 2015.25, 
        NA, 2014.08333333333, 2013.58333333333, 2013.66666666667, 
        2011.91666666667, 2013, 2012, 2014.58333333333, 2014.16666666667, 
        2012.5, 2014.41666666667, 2014.58333333333, 2013, 2015.75, 
        2012.75, 2015.66666666667, 2014.41666666667, 2014.41666666667, 
        2014.75, 2015.5, 2015.5, 2014, 2014.75, 2015, 2012.41666666667, 
        2013.91666666667, 2013.5, 2015.5, 2013.25, 2013.58333333333, 
        2014.91666666667, 2011.33333333333, 2014.25, 2013.75, 2014, 
        2015.41666666667, 2013.58333333333, 2015.08333333333, 2015.25, 
        2014.33333333333, 2013.91666666667, 2013.25, 2015, 2014.5, 
        2015.16666666667, 2015.66666666667), class = "yearmon")), row.names = c(NA, 
    -301L), .Names = c("Risk_Class", "administered_date", "value"
    ), class = "data.frame")

##############



    library(zoo)
    df$value <- yearmon(df$value)
    df$date <- as.Date(paste('01', df$value), format='%d %b %Y')

    ## Get counts for each risk class on each date
    frequencies <- with(df, table(Risk_Class, date))
    frequencies <- as.data.frame(frequencies)
    frequencies$date <- as.Date(frequencies$date)

    ## Plot frequencies by date
    ggplot(frequencies, aes(date, Freq, group = Risk_Class, colour = Risk_Class)) + 
           geom_line() + 
           geom_point(size = 4, shape = 21, fill = "white")
df=结构(列表(风险等级=c(“中”、“中”、“中”、“低”),
“低”、“低”、“低”、“高”、“高”、“低”、“中”,
“High”、“High”、“High”、“High”、“High”、“High”、“High”、“High”、“High”,
“高”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”,
“低”、“高”、“高”、“高”、“中”、“中”、“中”、“中”,
“中”、“中”、“中”、“高”、“高”、“高”、“高”,
“High”、“High”、“High”、“High”、“High”、“High”、“High”、“High”、“High”,
“高”、“高”、“高”、“高”、“中”、“中”、“中”,
“高”、“高”、“高”、“中”、“中”、“中”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“高”、“高”、“高”,
“高”、“高”、“高”、“高”、“高”、“高”、“低”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“中”、“高”、“高”,
“中”、“中”、“中”、“高”、“高”、“低”,
“低”、“低”、“低”、“高”、“高”、“低”、“低”、“低”,
“高”、“高”、“高”、“高”、“低”、“低”、“低”、“低”、“低”、“低”,
“高”、“高”、“高”、“高”、“高”、“低”、“低”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”,
“低”、“高”、“高”、“高”、“高”、“高”、“高”、“高”、“高”、“高”、“高”,
“中”、“高”、“高”、“高”、“高”、“高”、“中”、“低”,
“低”、“低”、“中”、“中”、“中”、“低”、“低”、“低”,
“低”、“低”、“低”、“低”、“高”、“中”、“中”、“中”,
“中”、“中”、“高”、“低”、“低”、“低”、“低”、“低”、“低”,
“低”、“低”、“低”、“低”、“中”、“中”、“中”、“中”、“中”,
“中”、“低”、“低”、“高”、“高”、“高”、“高”、“高”、“高”、“高”,
“高”、“高”、“高”、“高”、“高”、“低”、“低”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“低”、“中”、“中”,
“中”、“低”、“低”、“中”、“中”、“低”、“低”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“高”,
“高”、“高”、“高”、“高”、“高”、“低”、“低”、“高”,
“高”、“高”、“高”、“高”、“低”、“低”、“低”、“低”、“低”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“中”、“低”、“低”,
“低”、“低”、“低”、“中”、“中”、“中”、“低”、“低”,
“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”、“低”,
“低”、“低”、“低”、“高”、“高”、“高”、“高”、“低”、“低”,
“低”、“中”、“低”、“低”、“低”、“低”、“低”、“低”、“低”),给药日期=结构(c(1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,1L,
1L、1L、1L、1L、1L、1L、1L、1L、1L、1L、1L、1L、1L、.Label=“给药日期”,class=“因子”),
价值=结构(c(2015年、2015年、2014年、2014年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、2015年、,
2014, 2014.5, 2012.41666666667, 2013.66666666667, 2015.75, 
2011.75, 2014.83333333333, 2014.25, 2013, 2013.83333333333, 
2013.83333333333, 2013.91666666667, 2013.91666666667, 2014.75, 
2014.75, 2013.25, 2014.83333333333, 2015.5, 2010.66666666667, 
2015.83333,2014.66667,NA,2011.58333,
2013.5, 2013.33333333333, 2015.83333333333, 2015.33333333333, 
2015.75, 2014, 2015.33333333333, 2015.33333333333, 2013.66666666667, 
2013.66666666667, 2015.83333333333, 2015.83333333333, 2013.16666666667, 
2013.16666666667, 2015.41666666667, 2015.41666666667, 2012.58333333333, 
2012.58333333333, 2014.83333333333, 2014.83333333333, 2015, 
2015, 2013, 2015.5, 2015.75, 2012.25, 2020.66666666667, 2013.16666666667, 
2009.58333,北美,2012.252014.083332015.83333,
2014.08333,北美,2014.08333,2015.08333,
2014.91666666667, 2015.75, 2014.08333333333, 2015.41666666667, 
2014.75, 2015.33333333333, 2014.58333333333, 2015, 2013, 
2014.58333333333, 2014.25, 2013.25, 2015.75, 2013.75, 2014.75, 
2013.5, 2015.83333333333, 2013, 2015.58333333333, 2014.33333333333, 
2015.5, 2014.91666666667, 2013.58333333333, 2013.41666666667, 
2014.16666666667, 2015.75, 2015, 2014.08333333333, 2015.41666666667, 
2014.58333333333, 2012.91666666667, 2014.41666666667, 2015.166666
ggplot(data= frequencies, aes(x = date, y = Freq, group = Risk_Class, colour = Risk_Class)) + 
    geom_line() + 
    geom_point( size=4, shape=21, fill="white") + 
    scale_x_date(limits = c(as.Date('2010-01-01'), Sys.Date()))
df=structure(list(Risk_Class = c("Medium", "Medium", "Medium", "Low", 
    "Low", "Low", "Low", "High", "High", "High", "Low", "Medium", 
    "High", "High", "High", "High", "High", "High", "High", "High", 
    "High", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "High", "High", "High", "Medium", "Medium", "Medium", 
    "Medium", "Medium", "Medium", "High", "High", "High", "High", 
    "High", "High", "High", "High", "High", "High", "High", "High", 
    "High", "High", "High", "High", "Medium", "Medium", "Medium", 
    "High", "High", "High", "Medium", "Medium", "Medium", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "High", "High", "High", 
    "High", "High", "High", "High", "High", "High", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Medium", "High", "High", 
    "Medium", "Medium", "Medium", "High", "High", "High", "Low", 
    "Low", "Low", "Low", "High", "High", "High", "Low", "Low", "Low", 
    "High", "High", "High", "High", "Low", "Low", "Low", "Low", "Low", 
    "High", "High", "High", "High", "High", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "High", "High", "High", "High", "High", "High", "High", 
    "Medium", "High", "High", "High", "High", "High", "Medium", "Low", 
    "Low", "Low", "Medium", "Medium", "Medium", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "High", "Medium", "Medium", "Medium", 
    "Medium", "Medium", "High", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Medium", "Medium", "Medium", "Medium", 
    "Medium", "Low", "Low", "High", "High", "High", "High", "High", 
    "High", "High", "High", "High", "High", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Medium", "Medium", 
    "Medium", "Low", "Low", "Medium", "Medium", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "High", 
    "High", "High", "High", "High", "High", "Low", "Low", "High", 
    "High", "High", "High", "High", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Medium", "Low", "Low", 
    "Low", "Low", "Low", "Medium", "Medium", "Medium", "Low", "Low", 
    "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", "Low", 
    "Low", "Low", "Low", "High", "High", "High", "High", "Low", "Low", 
    "Low", "Medium", "Low", "Low", "Low", "Low", "Low", "Low"), administered_date = structure(c(1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "administered_date", class = "factor"), 
        value = structure(c(2015, 2015.41666666667, 2014.91666666667, 
        2014, 2014.5, 2012.41666666667, 2013.66666666667, 2015.75, 
        2011.75, 2014.83333333333, 2014.25, 2013, 2013.83333333333, 
        2013.83333333333, 2013.91666666667, 2013.91666666667, 2014.75, 
        2014.75, 2013.25, 2014.83333333333, 2015.5, 2010.66666666667, 
        2015.83333333333, 2014.66666666667, NA, 2011.58333333333, 
        2013.5, 2013.33333333333, 2015.83333333333, 2015.33333333333, 
        2015.75, 2014, 2015.33333333333, 2015.33333333333, 2013.66666666667, 
        2013.66666666667, 2015.83333333333, 2015.83333333333, 2013.16666666667, 
        2013.16666666667, 2015.41666666667, 2015.41666666667, 2012.58333333333, 
        2012.58333333333, 2014.83333333333, 2014.83333333333, 2015, 
        2015, 2013, 2015.5, 2015.75, 2012.25, 2020.66666666667, 2013.16666666667, 
        2009.58333333333, NA, 2012.25, 2014.08333333333, 2015.83333333333, 
        2014.08333333333, NA, 2014.08333333333, 2015.08333333333, 
        2014.91666666667, 2015.75, 2014.08333333333, 2015.41666666667, 
        2014.75, 2015.33333333333, 2014.58333333333, 2015, 2013, 
        2014.58333333333, 2014.25, 2013.25, 2015.75, 2013.75, 2014.75, 
        2013.5, 2015.83333333333, 2013, 2015.58333333333, 2014.33333333333, 
        2015.5, 2014.91666666667, 2013.58333333333, 2013.41666666667, 
        2014.16666666667, 2015.75, 2015, 2014.08333333333, 2015.41666666667, 
        2014.58333333333, 2012.91666666667, 2014.41666666667, 2015.16666666667, 
        2015.08333333333, 2013.83333333333, 2013.41666666667, 2013.91666666667, 
        2015.83333333333, 2015.75, 2013.33333333333, 2014.66666666667, 
        2014.25, 2014.91666666667, 2015.33333333333, 2014.33333333333, 
        2014.58333333333, 2014.33333333333, 2014.33333333333, 2014.25, 
        2015.83333333333, 2014.16666666667, 2014.75, 2012.41666666667, 
        2013.5, 2015.5, 2014.08333333333, 2013.25, 2015.5, 2013, 
        2012.66666666667, 2015.16666666667, 2012.33333333333, 2013.41666666667, 
        2015.16666666667, 2015.16666666667, 2015.25, 2011.66666666667, 
        2015.08333333333, 2014.41666666667, 2012.91666666667, 2014.66666666667, 
        2013.16666666667, 2015.16666666667, 2013.58333333333, 2014, 
        2011.75, 2015.75, 2015.58333333333, 2011.5, 2014.91666666667, 
        2013.25, 2013.33333333333, 2005.25, 2011, 2011.83333333333, 
        2013.16666666667, 2013.91666666667, 2015.66666666667, 2014.58333333333, 
        2015.75, 2015.5, 2012.75, 2014, 2012.91666666667, 2015.66666666667, 
        2015.58333333333, 2013.08333333333, 2012.5, 2012.5, 2011.83333333333, 
        2015.66666666667, 2014.41666666667, 2015.33333333333, 2015.66666666667, 
        2013.66666666667, 2015.5, 2015.5, 2013.5, 2012.25, 2013.58333333333, 
        2015, 2015.25, 2019.25, 2013.91666666667, 2014.66666666667, 
        2015.5, 2014.41666666667, 2013.08333333333, 2013.41666666667, 
        2014.83333333333, 2014.25, 2013.41666666667, 2013.5, 2014.83333333333, 
        2015.5, 2013.75, 2014.16666666667, 2014.66666666667, 2025.66666666667, 
        2012.41666666667, 2014.66666666667, 2014.66666666667, 2013.5, 
        2013.5, 2013.25, 2014, 2014.16666666667, 2012.83333333333, 
        2013.41666666667, 2015.58333333333, 2015.16666666667, 2014.5, 
        2014.5, 2013.5, 2015.16666666667, 2014.25, 2015.66666666667, 
        2013.25, 2014.33333333333, 2014.91666666667, 2013.16666666667, 
        2014.08333333333, 2015.08333333333, 2014.75, 2012.75, 2013.41666666667, 
        2012.08333333333, 2015.5, 2005.58333333333, 2014.75, 2013.25, 
        2015.83333333333, 2014, 2013.66666666667, 2015.5, 2012.25, 
        2012.33333333333, 2015.83333333333, 2013.75, 2012.66666666667, 
        2012.41666666667, 2014.83333333333, 2012.33333333333, 2013.58333333333, 
        2014.33333333333, 2015.5, 2013.83333333333, 2014.25, 2013.91666666667, 
        2014.16666666667, 2014.66666666667, 2013.66666666667, 2012.5, 
        2015.16666666667, 2009.5, 2015.83333333333, 2014, 2014.33333333333, 
        2014.41666666667, 2013.91666666667, 2013.33333333333, 2015.25, 
        NA, 2014.08333333333, 2013.58333333333, 2013.66666666667, 
        2011.91666666667, 2013, 2012, 2014.58333333333, 2014.16666666667, 
        2012.5, 2014.41666666667, 2014.58333333333, 2013, 2015.75, 
        2012.75, 2015.66666666667, 2014.41666666667, 2014.41666666667, 
        2014.75, 2015.5, 2015.5, 2014, 2014.75, 2015, 2012.41666666667, 
        2013.91666666667, 2013.5, 2015.5, 2013.25, 2013.58333333333, 
        2014.91666666667, 2011.33333333333, 2014.25, 2013.75, 2014, 
        2015.41666666667, 2013.58333333333, 2015.08333333333, 2015.25, 
        2014.33333333333, 2013.91666666667, 2013.25, 2015, 2014.5, 
        2015.16666666667, 2015.66666666667), class = "yearmon")), row.names = c(NA, 
    -301L), .Names = c("Risk_Class", "administered_date", "value"
    ), class = "data.frame")

##############



    library(zoo)
    df$value <- yearmon(df$value)
    df$date <- as.Date(paste('01', df$value), format='%d %b %Y')

    ## Get counts for each risk class on each date
    frequencies <- with(df, table(Risk_Class, date))
    frequencies <- as.data.frame(frequencies)
    frequencies$date <- as.Date(frequencies$date)

    ## Plot frequencies by date
    ggplot(frequencies, aes(date, Freq, group = Risk_Class, colour = Risk_Class)) + 
           geom_line() + 
           geom_point(size = 4, shape = 21, fill = "white")