GGallyパッケージのggpair関数を使いこなすための覚え書き |
####まずはパッケージを読み込みます。
library(ggplot2)
library(GGally)
####全データを投入してプロット
##引数にデータフレームを指定するだけ
p<-ggpairs(data2)
右上=upper
左下=lower
真中=diag
連続量×連続量
upper 相関係数
lower 散布図
連続量×離散量
upper 箱ひげ図
lower ヒストグラム(ファセット)
離散量×離散量 棒グラフ(ファセット)
diag
連続量 密度図
離散量 棒グラフ
グラフの変更
###upperの連続量にsmooth_loes、連続×離散にfacethist、離散量にratioを指定
##領域名=list(変数の種別=グラフの種類)
p<-ggpairs(data2,upper=list(continuous="smooth_loess",combo="facethist",discrete="ratio"))
###diagの連続量にbarDiagを指定するとヒストグラムになる。
p<-ggpairs(data2,diag=list(continuous="barDiag"))
###lowerの連続量に相関係数、連続×離散にボックスプロットを指定
p<-ggpairs(data2,lower=list(continuous="cor",combo="box"))
###upperの連続×離散(combo=)にドットを指定
p<-ggpairs(data2,upper=list(combo="dot"))
###lowerの連続×離散(combo=)にdenstripを指定
p<-ggpairs(data2,lower=list(combo="denstrip"))
###連続量にdensityを指定
###MASSパッケージが必要なので入れておく。
install.packages("MASS")
p<-ggpairs(data2,upper=list(continuous='density'))
指定できるグラフ
continuous(連続量×連続量)
’points’=散布図
’smooth’=散布図+平滑化線
’smooth_loess’=散布図+平滑化線+信頼区間
’density’=等高線
’cor’=相関係数
’blank’=表示しない
combo(連続量×離散量)
’box’=箱ひげ図
’box_no_facet’=ファセットしない箱ひげ図
’dot’=ドット
’dot_no_facet’=ファセットしないドット
’facethist’=ヒストグラム
’facetdensity’=密度図
’denstrip’=帯状密度図
’blank’=表示しない
discrete(離散量)
’facetbar’=棒グラフ
’ratio’=よくわからない
’blank’=標示しない
aesを指定する
###aes(colour)の指定
p<-ggpairs(data2,aes(colour=区分))
###aes(colour,fill)の指定
p<-ggpairs(data2,aes(colour=区分,fill=斜面方位))
文字の大きさを変える
###軸レベルを5ポイントにして、その他を7ポイントにする。
p<-ggpairs(data2)+theme(axis.text= element_text(size=5),legend.title = element_text(size=7),legend.text = element_text(size=7),axis.title = element_text(size=7),plot.title= element_text(size=7),strip.text=element_text(size=7))
###相関係数の文字の大きさを変える
##wrap("cor",size=3)で相関係数とサイズを指定
p<-ggpairs(data2,upper=list(continuous=wrap("cor",size=3)))
ドットの大きさを変える
###ドットサイズを0.1にする
##wrap("points",size=0.1)で散布図を指定しつつドットサイズを0.1mmにする。
p<-ggpairs(data2,lower=list(continuous=wrap("points",size=0.1)))
テーマを変える
##ggthemesパッケージ読み込み
library(ggthemes)
##theme_minimal() シンプルで好き
p<-ggpairs(data2)+theme_minimal()
##base_family = "Japan1GothicBBB"で日本語ゴシックフォントを指定
p<-ggpairs(data2)+theme_tufte(base_family = "Japan1GothicBBB")
##theme_solarized() かっこいいけど、仕事で使っていいのか・・・
p<-ggpairs(data2)+theme_solarized(light = FALSE)
カラーパレットは使えないみたい
ggpairs()でscale_colour_brewer()などのカラーパレットを指定しようとすると
p<-ggpairs(data2)+scale_colour_brewer(pallete=""Set1)
'ggmatrix' does not know how to add objects that do not have class 'theme' or 'labels'
というエラーが出ます。
ggplot2のデフォルトカラーパレットを変更すればよいようですが、難しそうなので今のところあきらめています。
論文なんかで使う場合を想定
今のところ、こんな感じがよさそうかな、と思っています。
##upper=list(continuous=wrap("cor",size=3))で右上の相関係数の文字を小さくする。
##diag=list(continuous="barDiag"で斜め列をヒストグラムにする。
##lower=(continuous=wrap("points",size=0.1))で左下散布図の店のサイズを小さくする。
##+theme_tufte(base_family = "Japan1GothicBBB")であっさりテーマに変更
##+theme(axis.text=... 以降で文字サイズを小さくする。
p<-ggpairs(data2,upper=list(continuous=wrap("cor",size=3)),diag=list(continuous="barDiag"),lower=list(continuous=wrap("points",size=0.1)))+theme_tufte(base_family = "Japan1GothicBBB")+theme(axis.text= element_text(size=5),legend.title = element_text(size=7),legend.text = element_text(size=7),axis.title = element_text(size=7),plot.title= element_text(size=7),strip.text=element_text(size=7))
この 記事 は クリエイティブ・コモンズ 表示 4.0 国際 ライセンスの下に提供されています。