モモノキ&ナノネと一緒にRでシンプルなグラフを描いてみよう
グラフを整形して見やすくしてみよう。
ナノネ、統計解析用フリーソフト『R』の使い方を学習しよう。第4回目もグラフ作図練習の続きをやるよ。
グラフの練習ばっかりだね。
グラフ作図はRに慣れるのにちょうどいい練習だよ。データ解析でも必要になるしね。
早くR慣れてデータ解析に進もう。
今回は以前作図したcarsデータの散布図を、もう少しキレイに整形してみよう。
# before Graph
plot(cars,
main = "Speed and stopping distances of cars", # タイトル
xlab = "Speed(mph)", # xラベル
ylab = "Dist(ft)" # yラベル
)
色とか付けて派手にする?
今回はモノクロのままで、文字やマーカーサイズ、軸範囲を調整してみよう。
まず、マーカーサイズを大きくしてみよう。plot()オプションのcexでマーカーサイズを変更できるよ(デフォルト1)。
plot(cars,
main = "Speed and stopping distances of cars", # タイトル
xlab = "Speed(mph)", # xラベル
ylab = "Dist(ft)", # yラベル
cex = 2 # マーカーサイズ
)
cexを2にしたら、マーカー大きくなった。
次は、文字サイズを大きくしてみよう。plot()オプションのcex.mainでグラフタイトル、cex.labで軸説明ラベル、cex.axisで軸ラベル(数値など)の文字サイズが変更できるよ。
plot(cars,
main = "Speed and stopping distances of cars", # グラフタイトル
xlab = "Speed(mph)", # x軸説明ラベル(x軸タイトル)
ylab = "Dist(ft)", # y軸説明ラベル(y軸タイトル)
cex = 2, # マーカーサイズ
cex.main = 2, # グラフタイトルの文字サイズ
cex.lab = 2, # 軸説明ラベル(軸タイトル)の文字サイズ
cex.axis = 2 # 軸ラベル(数値など)の文字サイズ
)
文字を大きくしたら、x軸の説明ラベルがグラフからはみ出ちゃったけど。どうすればいい?
描画領域の余白の大きさを調整すると、文字をうまくおさめることができるよ。余白を調整するには、par(mar=余白指定)を使えばOK。余白の大きさは下、左、上、右の順でベクトルを使って指定してね。デフォルトでは(5.1, 4.1, 4.1, 2.1)になっているよ
par(mar = c(6, 7, 5, 2)) # 描画領域の余白指定(下、左、上、右):デフォルト c(5,4,4,2) + 0.1
plot(cars,
main = "Speed and stopping distances of cars", # グラフタイトル
xlab = "Speed(mph)", # x軸説明ラベル(x軸タイトル)
ylab = "Dist(ft)", # y軸説明ラベル(y軸タイトル)
cex = 2, # マーカーサイズ
cex.main = 2, # グラフタイトルの文字サイズ
cex.lab = 2, # 軸説明ラベル(軸タイトル)の文字サイズ
cex.axis = 2 # 軸ラベル(数値など)の文字サイズ
)
余白を調整したら、うまく文字がおさまった。文字の位置も調整できる?説明ラベルを軸からもう少し離したいなぁ。
位置調整はpar(mgp = 位置指定)を使うといいよ。位置指定は軸説明ラベル、軸ラベル(数値など)、軸メモリの順でベクトルを使って指定してね。デフォルトは(3, 1, 0)で値を大きくとると軸から離れて表示されるよ。
par(mar = c(6, 7, 5, 2)) # 描画領域の余白指定(下、左、上、右):デフォルト c(5,4,4,2) + 0.1
par(mgp = c(4, 1.2, 0)) # ラベルなどの位置指定(軸説明ラベル、軸ラベル、軸メモリ):デフォルト c(3,1,0)
plot(cars,
main = "Speed and stopping distances of cars", # グラフタイトル
xlab = "Speed(mph)", # x軸説明ラベル(x軸タイトル)
ylab = "Dist(ft)", # y軸説明ラベル(y軸タイトル)
cex = 2, # マーカーサイズ
cex.main = 2, # グラフタイトルの文字サイズ
cex.lab = 2, # 軸説明ラベル(軸タイトル)の文字サイズ
cex.axis = 2 # 軸ラベル(数値など)の文字サイズ
)
最初よりだいぶいい感じかも。軸の範囲や表示間隔を調整するには?
x軸両端の範囲(座標系)はxlimで、y軸はylimで設定できるよ。両端の範囲はベクトルを使って指定してね。あと軸ラベル(数値など)の表示はxaspとyaspで調整できるよ。ラベルに表示する開始値、終了値、分割数の3つをベクトルを使って指定してね。
par(mar = c(6, 7, 5, 2)) # 描画領域の余白指定(下、左、上、右):デフォルト c(5,4,4,2) + 0.1
par(mgp = c(4, 1.2, 0)) # ラベルなどの位置指定(軸説明ラベル、軸ラベル、軸メモリ):デフォルト c(3,1,0)
par(lwd = 2) # 線の太さ.
plot(cars,
main = "Speed and stopping distances of cars", # グラフタイトル
xlab = "Speed(mph)", # x軸説明ラベル(x軸タイトル)
ylab = "Dist(ft)", # y軸説明ラベル(y軸タイトル)
cex = 2, # マーカーサイズ
cex.main = 2, # グラフタイトルの文字サイズ
cex.lab = 2, # 軸説明ラベル(軸タイトル)の文字サイズ
cex.axis = 2, # 軸ラベル(数値など)の文字サイズ
xlim = c(0, 30), # x軸の座標範囲
xaxp = c(0, 30, 3), # X軸ラベル(開始座標、終了座標、分割数)
ylim = c(0, 130), # y軸の座標範囲
yaxp = c(0, 120, 3) # y軸ラベル(開始座標、終了座標、分割数)
)
いい感じに調整できたかも。文献にでてくるグラフっぽくなった。
またね!
0 件のコメント :
コメントを投稿