グラフのパラメータ

グラフのフォント、色、軸、タイトルなどを変更する。

par( ) 関数でオプションを指定する。
フォーマット: par(オプション名=value, オプション名=value, ...)
昔から思ってるけど、Excelで描いたほうが楽

作図パラメータのリンク
 Rjpwikiの Rのグラフィックスパラメータ
 R-tipsの グラフィックスパラメータ(壱)グラフィックスパラメータ(弐)
 竹中先生の 5. グラフのいろいろな設定と重ね描き
 飯島先生の R作図

# par() でパラメータを設定する

par()              # そのときの設定を見る
opar <- par()      # そのときの設定を一時保存
par(col.lab="red") # x軸、y軸のタイトルを赤にする
hist(mtcars$mpg)   # 上の設定でグラフを作る
par(opar)          # 設定を元に戻す

高水準作図関数のなかで直接オプション名=value として指定することもできる。

# 作図関数のなかでパラメータ設定
hist(mtcars$mpg, col.lab="red")

それぞれの作図関数 (e.g., plot, hist, boxplot) のヘルプ参照。


テキストとシンボルのサイズ

option description
cex テキストとシンボルの倍率。 1 = デフォルト, 1.5 = 1.5倍。50%大きくする。 0.5 = 0.5倍。50%小さくする。
cex.axis cexパラメータを基準とした軸の倍率。軸の注釈 (目盛りの数値) が大きくなる
cex.lab cexパラメータを基準とした軸ラベルの倍率。
cex.main cexパラメータを基準としたグラフタイトルの倍率。
cex.sub パラメータを基準としたグラフのサブタイトルの倍率。

シンボルの種類

pch= オプションでプロットシンボルを指定する。21から25はr (col=) で線の色、 (bg=) で塗りつぶしの色を指定できる。

plotting symbols

 

線の種類

lines, axes のリファレンスも参照。

option description
lty 線のタイプ。以下参照
lwd 線の相対的な太さ。デフォルトは1。2にしたら2倍。

line types

 

色の設定

option description
col デフォルトの作図色を指定する。関数によっては (e.g., lines) ベクトルで指定できる。その場合1周したら戻る。
col.axis 軸の注釈の色
col.lab 軸ラベルの色
col.main グラフタイトルの色
col.sub グラフのサブタイトルの色
fg 前景色の指定 (軸、シンボル、ボックスの線の色。col=...と同じ)
bg 背景色の指定

R では数値、色名、16進数、RGBで色指定できる。
右は全て同じ意味。 col=1, col="white", and col="#FFFFFF"

以下はEarl F. Glynnのカラーチャート. Rjpwikiの カラーチャート も参照。

R color chart

カラーパレットの関数で連続した色調で指定できる。Rjpwikiの カラーパレット も参照。使えるのは rainbow(n), heat.colors(n), terrain.colors(n), topo.colors(n), cm.colors(n)。nは数値。使用したい色の数を入れる。

colors() 使用できる色名を返す。

自分がよくつかう色

jibuncolor

# Rjpwikiの解説より

# カラーパレット一覧
demo.pal(if(.Device == "postscript") 64 else 16)

# RColorBrewerのカラーパレット
library(RColorBrewer)
display.brewer.all(type="div")
win.graph()
display.brewer.all(type="seq")
# その他 # display.brewer.all(type="qual")
# display.brewer.all(n=5,type="div",exact.n=TRUE)
# display.brewer.all()
# col=brewer.pal(12, "Greys") と記述する。brewer.pal関数は16進法コードのベクトルを生成。
# 9段階までを想定

# グレースケールだけ抜き出し
pie(rep(1, 12), col = grey(0:11/12))
library(RColorBrewer)
win.graph()
pie(rep(1, 9), col = brewer.pal(9, "Greys"))

# 全色見本pdf

Rjpwikiのリンク
カラーパレット
カラーチャート
Rの色見本

フォント

作図で日本語を使用するには
par(family="Japan1") (明朝)
par(family="Japan1GothicBBB") (ゴシック)
と指定する。こちらも参考。

option description
font 数値でスタイルを指定する
1=そのまま, 2=太字, 3=斜体, 4=太字斜体, 5=シンボル文字
font.axis 軸注釈のスタイル
font.lab 軸ラベルのフォント
font.main グラフタイトルのフォント
font.sub グラフサブタイトルのフォント
ps ポイント単位で大きさを指定する。ps*cexが実際の大きさになる (ps=12, cex=2なら24ポイント)
family フォントファミリーを設定する。英語で出力する場合は "serif", "sans", "mono", "symbol". のいずれかで指定。使用環境に依存。

Windowsでのフォントファミリー
 serif = "TT Times New Roman",
 sans = "TT Arial",
 mono = "TT Courier New",
 symbol = "TT Symbol"
 *TT=True Type。自分で割り当てを変えることもできる。

# フォントファミリーの割り当てを変える
plot(1:10,1:10,type="n")
windowsFonts(
  A=windowsFont("Arial Black"),
  B=windowsFont("Bookman Old Style"),
  C=windowsFont("Comic Sans MS"),
  D=windowsFont("Symbol")
)
text(3,3,"Hello World Default")
text(4,4,family="A","Hello World from Arial Black")
text(5,5,family="B","Hello World from Bookman Old Style")
text(6,6,family="C","Hello World from Comic Sans MS")
text(7,7,family="D", "Hello World from Symbol")

font example click to view


余白・グラフのサイズ

だいたいの場合、余白領域だけをpar(mar=...) で指定すればよい。

font example 田中先生のサイトより


option description
mar 行単位・数値ベクトルでマージンの大きさを指定する。 c(下, 左, 上, 右) 。 デフォルトは c(5, 4, 4, 2) + 0.1
mai インチ単位・数値ベクトルでマージンの大きさを指定する。
pin プロット領域のサイズをインチ単位で指定する。 (幅, 高さ)

領域の指定

# 基本的に単位はインチ

# 利用例
# プロット領域を広げる。軸ラベルを表示するためには2行分は余白を確保する
par(mar=c(2,2,2,2))
plot(1:10)

# 余白領域は各プロットごとに指定される
par(mfrow=c(2,2), mar=c(2,2,0,0))
plot(1:10)
plot(1:10)


# その他
# デバイス領域 (作図ウィンドウの大きさ) の指定
windows(width = 16, height = 5)
  # デフォルトは7。win.graph()でも可。png(), pdf()なども可能。
  # par("din") で取得

# 作図領域 (figure area) の指定
par(fin = c(5,5))

# プロット領域 (plot area) の指定
par(pin = c(4,4))

par(ps=) # フォントサイズを指定可能。デフォルトは12。

より詳しくは
 Earl F. Glynn's margin tutorial
 R-tipsの グラフィックスパラメータ(壱)


ステップアップ

help(par) も参照。軸とテキストの注釈は軸とテキストページも参照。