×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
Rで3要因 (pdf) のグラフをつくろう (Rjpwikiの情報に感謝)
データは以下みたいな感じ
## データ生成。
c1m <- c(1,4)
c1n <- c(3,2) ## Condition 1
c2m <- c(5,3)
c2n <- c(1,4) ## Conditon 2
c1dat <- cbind(c1m, c1n)
rownames(c1dat) <- c("a", "b")
c2dat <- cbind(c2m, c2n)
rownames(c2dat) <- c("a", "b")
# x軸、y軸の幅を同一にするため、オブジェクトにいれておく
xlm <- c(0.8, 2.2)
ylm <- c(0, 6)
# parで作図の領域を指定する
par(mfrow = c(1, 2), mar = c(4,0,4,0), oma = c(4,4,4,4), bty = "l")
## Condition 1のグラフ描画
matplot(c1dat, type = "b", pch = 1:2, col = 1, xlim = xlm, ylim = ylm, xaxt = "n", xlab = "Condition 1")
axis(1, at = 1:2, labels = c("a", "b"))
## Condition 2のグラフ描画。Condition2はy軸を書かないのでaxes = Fでx軸ともども描画しないようにし、x軸は後でaxis関数で付け加える
matplot(c2dat, type = "b", pch = 1:2, col = 1, xlim = xlm, ylim = ylm, axes = F, xlab = "Condition 2")
## まずx軸に線を引き、その上でもう1回axis関数を使って目盛を描く
axis(1, at = xlm, tck = 0, labels = F) # 線の長さはxlmでCondition 1と同じにし、tck, labelで目盛もラベルもない、ただの線を描く
axis(1, at = 1:2, c("a", "b")) # 普通に目盛を描く。Condition 1と全く同じ
## 凡例描画
legend("topright", legend = c("m", "n"), lty = 1:2, pch = 1:2, box.lty = 0)
以下はそのうち調べよう
作画領域、グラフの大きさ、凡例を外に出す、等の操作
locator(10) マウスでカチカチやるとそのたび座標を取得してくれる
データは以下みたいな感じ
a | b | ||
条件1 | m | 1 | 4 |
n | 3 | 2 | |
条件2 | m | 5 | 3 |
n | 1 | 4 |
## データ生成。
c1m <- c(1,4)
c1n <- c(3,2) ## Condition 1
c2m <- c(5,3)
c2n <- c(1,4) ## Conditon 2
c1dat <- cbind(c1m, c1n)
rownames(c1dat) <- c("a", "b")
c2dat <- cbind(c2m, c2n)
rownames(c2dat) <- c("a", "b")
# x軸、y軸の幅を同一にするため、オブジェクトにいれておく
xlm <- c(0.8, 2.2)
ylm <- c(0, 6)
# parで作図の領域を指定する
par(mfrow = c(1, 2), mar = c(4,0,4,0), oma = c(4,4,4,4), bty = "l")
# mfrow: 1行2列でグラフをかく。mar: 下左上右の順で各グラフのマージンを指定。左右にくっつけるので、左右のマージンを0にする。oma: 全てのグラフのマージン。とりあえず全部同じに。bty: グラフの枠線指定。"l"はL字型で左と下だけ。"7"だったら右と上だけ (センスあるなぁ…)
## Condition 1のグラフ描画
matplot(c1dat, type = "b", pch = 1:2, col = 1, xlim = xlm, ylim = ylm, xaxt = "n", xlab = "Condition 1")
axis(1, at = 1:2, labels = c("a", "b"))
## Condition 2のグラフ描画。Condition2はy軸を書かないのでaxes = Fでx軸ともども描画しないようにし、x軸は後でaxis関数で付け加える
matplot(c2dat, type = "b", pch = 1:2, col = 1, xlim = xlm, ylim = ylm, axes = F, xlab = "Condition 2")
## まずx軸に線を引き、その上でもう1回axis関数を使って目盛を描く
axis(1, at = xlm, tck = 0, labels = F) # 線の長さはxlmでCondition 1と同じにし、tck, labelで目盛もラベルもない、ただの線を描く
axis(1, at = 1:2, c("a", "b")) # 普通に目盛を描く。Condition 1と全く同じ
## 凡例描画
legend("topright", legend = c("m", "n"), lty = 1:2, pch = 1:2, box.lty = 0)
以下はそのうち調べよう
作画領域、グラフの大きさ、凡例を外に出す、等の操作
locator(10) マウスでカチカチやるとそのたび座標を取得してくれる
PR
Comment
Trackback
Trackback URL
Comment form