軸の表示いろいろ

  • こちらから
  • 説明がないので、説明をしてみると優しい(易しいではなく)、と思う
  • axesの制御は初めてなので、勉強がてら
#データを統一して、軸制御を目立ちやすくする
x<-1:100
y<-(x-5)^2
#軸を描くか描かないか
#plot()関数は引数axesがあって、デフォルトはaxes=TRUEで描く。描きたくないときはaxes=FALSE
# デフォルトで描かれるのは、下辺と左辺の軸
par(mfcol=c(2,3))
plot(x,y) # デフォルト
plot(x,y,axes=TRUE)
plot(x,y,axes=FALSE)
# 枠は描くけど、軸の刻みや数値は描かない
plot(x,y,xaxt="n")
plot(x,y,yaxt="n")
plot(x,y,xaxt="n",yaxt="n")
par(mfcol=c(1,1))

# 軸を描かずにplot()関数でプロットをして、
# 軸を後付けで描くにはaxis()関数を使う
# 軸は4つある
# axis(1)は下辺
# axis(2)は左辺
# axis(3)は上辺
# axis(4)は右辺
par(mfcol=c(2,3))
# 下辺だけ入れる
plot(x,y,axes=FALSE)
axis(1)
# 左辺だけ入れる
plot(x,y,axes=FALSE)
axis(2)
# 上辺だけ入れる
plot(x,y,axes=FALSE)
axis(3)
# 右辺だけ入れる
plot(x,y,axes=FALSE)
axis(4)
# 下辺・左辺の2軸を入れる
plot(x,y,axes=FALSE)
axis(1)
axis(2)
# 上辺・右辺の2軸を入れる
plot(x,y,axes=FALSE)
axis(3)
axis(4)
# 下辺・左辺・上辺の3軸を入れる
plot(x,y,axes=FALSE)
axis(1)
axis(2)
axis(3)
# 下辺・左辺・上辺・右辺の4軸を入れる
plot(x,y,axes=FALSE)
axis(1)
axis(2)
axis(3)
axis(4)
par(mfcol=c(1,1))
# ここまででは軸を入れるか入れないかを制御した
# 軸の詳細はRのデフォルト設定に任せてあった
# 軸の制御をしたい
# まず、軸のきざみを制御する
# 刻みを数値ベクトルで指定する
par(mfcol=c(1,4))
plot(x,y,axes=FALSE) # 指定しなければデフォルト
axis(1)
plot(x,y,axes=FALSE)
axis(1,1:length(x))

plot(x,y,axes=FALSE)
axis(1,seq(from=10,to=100,by=10))

plot(x,y,axes=FALSE)
axis(1,c(0,50,100))

par(mfcol=c(1,1))
# 次に、表示文字列(数値列でもよし)を制御する
par(mfcol=c(2,3))
plot(x,y,axes=FALSE) # 指定しなければデフォルト
axis(1)

plot(x,y,axes=FALSE) # 指定しなければデフォルト
axis(1,col=2)

plot(x,y,axes=FALSE)
axis(1,1:length(x),1:length(x))

plot(x,y,axes=FALSE)
axis(1,seq(from=10,to=100,by=10),seq(from=10,to=100,by=10))

plot(x,y,axes=FALSE)
axis(1,seq(from=10,to=100,by=10),c("十","二十","三十","四十","五十","六十","七十","八十","九十","百"))

# 文字の色、軸の色も指定できる
plot(x,y,axes=FALSE)
axis(1,c(0,50,100),c(0,"Half","Full"),col="red",col.axis="blue")

par(mfcol=c(1,1))