2016-05-24 14 views
1

1つの変数の頻度をグループごとにプロットするのに時間がかかりました。具体的には、x軸が月と年、y軸が毎月の値の頻度であり、各グループが色で表される折れ線グラフをプロットしたいと思います。これは私のコードは次のようになります。ggplot2を使用して時間の経過とともに複数の周波数をプロット

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") 

Frequency by group over time

これはdput(risk_treat)出力されます:

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") 
+1

ポイントが大きくなり、バブルチャートより観測がありますか? – lmo

+0

@lmo私はそれについて考えましたが、私は、最も単純な描写は時間の経過とともに3つの別々の行になると考えています。 –

+1

データの一部を投稿できますか? 'dput(risk_treat)'の出力を投稿してみてください。 –

答えて

1

私は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") 

enter image description here

。多くを見るのはかなり難しいです。

これはデータをよりよく見ることができると思うが、それはあなたの目的に完全に依存する。たぶん

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())) 

enter image description here

関連する問題