Knowledge As Practice

JAIST(東京)で Transformative Service Research に取り組んでる社会人大学院生の研究・勉強メモ

ggplot2 と ggvis の違い

新しいツールを学ぼうと、R のグラフィックツール ggvis をいじってみました。理由は、datacamp の作図コース*1では ggplot ではなく ggvis が使われているから。ggplot2 のほうがメジャーなので、そちらをしっかり学びたいですが、ggvis しかないので仕方ない。
www.datacamp.com

 
まず、ggvis basics というページを読んで、概要をつかみました。記されているコードをコピべして、練習。なんか、ggplot2 よりも操作が簡素な印象。私が ggplot2 の操作を忘れているせいかもしれません。
http://ggvis.rstudio.com/ggvis-basics.html

 
ggvis と ggplot2 のおもしろい違いは ~ のあるなし。ggplot2 は aes() の中に x軸とy軸になるのを入れるのですが、ggvis では aes() がないかわりに、~ を使う。これは「データセットの中の変数」だということを明示するためだそうです。

ggplot(mtcars, aes(wt, mpg)) + geom_point() # ggplot2 の場合
layer_points(ggvis(mtcars, ~wt, ~mpg)) # ggvis の場合

 
それぞれの図は次のようになります。上が ggplot2 、下が ggvis。背景が元から白のほうが好みかな。あと、点の大きさはデフォルトで ggvis が少し大きいので好み。

 
f:id:hikaru1122:20150729234924p:plain f:id:hikaru1122:20150729234934p:plain  
ggvis が残念なのが箱ひげ図。なんか変。上が ggplot2 、下が ggvis。たぶん、設定でなんとかなるんだろうけど、なぁ。

p <- ggplot(mtcars, aes(factor(cyl), mpg)) # ggplot2 の場合
p + geom_boxplot()
mtcars %>% ggvis(~factor(cyl), ~mpg) %>% layer_boxplots() # ggvis の場合

 
f:id:hikaru1122:20150729234900p:plainf:id:hikaru1122:20150729234906p:plain  
以上、ggplot2 と ggvis のちょっとした違いの報告でした。

*1:まだそのコースでは学んでいません。

クリエイティブ・コモンズ・ライセンス
この 作品 は クリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスの下に提供されています。