Rを通じて統計学を学ぶ備忘録ブログ

SPSSからRに移行したい私のような人向けのR解説ブログ兼学習用備忘録。

第68回 ggplotの備忘録その5

 今回は折れ線グラフを中心に見ていきます。注意することは、x軸には連続変数をもってくることが多いですが、離散変数を使う場合はファクタ化する必要があることかなー。

ggplot(demo, aes(x = no, y = y, col = class))

+ geom_line(linetype = "dashed")

+ ylim(0, max(demo$y))

+ geom_point(size = 5, shape = 25, position = position_dodge(0.5))

 

#linetype = "dashed":線の種類を変更する

#position = position_dodge(0.5):点を少しずらす 

f:id:teruaki-sugiura:20160102165310p:plain

ggplot(demo2, aes(x = no,y = value, fill = class))

+ geom_area(col = "black", size = 1.0, alpha = 0.5)

+ scale_fill_brewer(palette="Greens" , breaks = rev(levels(demo2$class)))

 

# alpha = 0.5:50%透過させる

# breaks = rev(levels(demo2$class):凡例の順序を逆転させる

 

f:id:teruaki-sugiura:20160102165312p:plain

demo.persent

<- ddply(demo2, "no", transform, Persent = value / sum(value) * 100)

#noの全水準を100として、valueの値の割合を求める 

 

ggplot(demo.persent, aes(x = no, y = Persent, fill = class))

+ geom_area(col = "black", size = 1.0, alpha = 0.5)

+ scale_fill_brewer(palette = "Greens", breaks = rev(levels(demo2$class)))

f:id:teruaki-sugiura:20160102165313p:plain

ggplot(demo, aes(x = no, y = x1))

+ geom_area(fill = "darkgreen", col = "black", alpha = 0.5)

+ geom_line()

 

#geom_line():折れ線を重ね書き

f:id:teruaki-sugiura:20160102210321p:plain

ggplot(demo, aes(x = no, y = x1))

+ geom_ribbon(aes(ymin = x1 - x1.conf, ymax = x1 + x1.conf), alpha = 0.2)

+ geom_line()

#ymin = x1 - x1.conf:信頼区間の下限を求める

#ymax = x1 + x1.conf:信頼区間上下限を求める

#geom_ribbon()を描いてから、geom_line()で重ねる

 

f:id:teruaki-sugiura:20160102165315p:plain

ggplot(demo, aes(x = no, y = x1))

+ geom_line(aes(y = x1-x1.conf), col = "green", linetype = "dotted" )

+ geom_line(aes(y = x1+x1.conf), col = "green", linetype = "dotted" )

+ geom_line(col = "darkgreen")

 

#今回は全て線なのでgeom_ribbon()のように順番を気にしなくて良い

f:id:teruaki-sugiura:20160102165317p:plain

以上で今回はおしまい。

 

(補)Wide FormatとLong Fromat 

ggplotで積み上げ面グラフを作成する際は、wide formatではなく、long formatである必要がありますので、少し補足を書いておきます。

f:id:teruaki-sugiura:20160102171449p:plain

f:id:teruaki-sugiura:20160102171452p:plain

広告を非表示にする