2017-03-28 11 views
1

colorとラインタイプをggplotに変更したいと思います。私はこのコードを使用しています:線種変更不可ggplot2

a <- runif(84, 20, 80) 
a<-ts(a,start = 2009,frequency = 12) 
#a<-ts(result$`dataset1$Summe`,start = 2009,frequency = 12) 
a3 <- zoo(a, order.by = as.Date(yearmon(index(a)))) 
p1 <- autoplot(a3) 
p1 + scale_x_date(labels = date_format("%m/%Y"),breaks = date_breaks("2 months"), limits = as.Date(c('2009-01-01','2017-08-01')))+ theme(axis.text.x = element_text(angle = 90))+ theme(axis.text.x = element_text(angle = 90))+ 
    labs(x = "Date",y="Test") + theme(panel.background = element_rect(fill = 'white', colour = 'black'))+geom_line(linetype="dotted", color="red") 

ただし、色のみが変更されています。ラインタイプを変更するにはどうすればよいですか?

+0

がありますあなたは線種を変更する整数を使用してみましたか? –

+0

はい、成功しませんでした – Kaja

+0

整数または単語を使用して線種を変更できます。あなたの例を再現可能にすることはできますか? –

答えて

2

autoplot()は、渡されたオブジェクトの適切なデフォルトを選択します。外観をカスタマイズしたい場合は、標準のggplot()機能を使用する方が良いでしょう。 zooオブジェクトがトラフfortify()渡されるべきであることを行うことができるように

ggplot(fortify(a3, melt = TRUE)) + 
    geom_line(aes(x = Index, y = Value), linetype='dashed', color="red") + 
    scale_x_date(labels = date_format("%m/%Y"), 
       breaks = date_breaks("2 months"), 
       limits = as.Date(c('2009-01-01','2017-08-01')))+ 
    theme(axis.text.x = element_text(angle = 90), 
      axis.text.x = element_text(angle = 90), 
      panel.background = element_rect(fill = 'white', colour = 'black'))+ 
    labs(x = "Date",y="Test") 

enter image description here

を(NB:一番上の破線はpanel.backgroundテーマオプションによって引き起こされる)

+0

あなたはおそらく 'テーマ'行を整理することを検討することができます - 3行で物事を持つ必要はありません... –

+0

あなたはそうです、私は通常、今度はOPコードからまっすぐコピーしました – GGamba

関連する問題