ラベルのフォントサイズを大きくしたグラフにデータをプロットしたいと思います。
x = c(0:10)
y = sin(x) + 10
plot (
x, y, type="o",
xlab = "X values",
ylab = "Y values",
cex.axis = "2",
cex.lab = "2",
las = 1
)
残念ながら、y軸の数字はy軸のラベルと重なっています。 marを使おうとしましたが、うまくいきませんでした(ちなみに、plotコマンドで直接使用できるグラフィックパラメーターと、par()メソッドで設定する必要のあるグラフィックパラメーターを見つけるにはどうすればよいですか?)。
ラベルが重ならないようにするにはどうすればよいですか?
ご協力いただきありがとうございます。
スヴェン
par(mar)
を使用してプロットマージンを増やし、par(mgp)
を使用して軸ラベルを移動します。
par(mar = c(6.5, 6.5, 0.5, 0.5), mgp = c(5, 1, 0))
#Then call plot as before
ヘルプページで?par
plot
で直接使用できるパラメーターと、par
を介して呼び出す必要のあるパラメーターについて説明します。
「par()」を呼び出すことによってのみ設定できるパラメータがいくつかあります。
• ‘"ask"’, • ‘"fig"’, ‘"fin"’, • ‘"lheight"’, • ‘"mai"’, ‘"mar"’, ‘"mex"’, ‘"mfcol"’, ‘"mfrow"’, ‘"mfg"’, • ‘"new"’, • ‘"oma"’, ‘"omd"’, ‘"omi"’, • ‘"pin"’, ‘"plt"’, ‘"ps"’, ‘"pty"’, • ‘"usr"’, • ‘"xlog"’, ‘"ylog"’ The remaining parameters can also be set as arguments (often via ‘...’) to high-level plot functions such as ‘plot.default’, ‘plot.window’, ‘points’, ‘lines’, ‘abline’, ‘axis’, ‘title’, ‘text’, ‘mtext’, ‘segments’, ‘symbols’, ‘arrows’, ‘polygon’, ‘rect’, ‘box’, ‘contour’, ‘filled.contour’ and ‘image’. Such settings will be active during the execution of the function, only. However, see the comments on ‘bg’ and ‘cex’, which may be taken as _arguments_ to certain plot functions rather than as graphical parameters.
概念的にはひどいですが、手っ取り早い方法はpar
を使用し、ylab
に改行を追加することです。
x = 0:10
y = sin(x) + 10
par(mar=c(5,7,4,2))
plot (
x, y, type="o",
xlab = "X values",
ylab = "Y values\n",
cex.axis = "2",
cex.lab = "2",
las = 1
)
plot
で直接設定できるパラメータについては、?plot.default
と?plot.xy
が...
の引数を受け取るので見てください。 localWindow
やlocalBox
のような文書化されていない関数(私が見つける限り)への呼び出しもいくつかありますが、それらがどうなるかわかりません。無視されているだけだと思います。
Mgpパラメーターをtitle()関数に入れると、後でデフォルトをリセットする必要がなくなります。このように、パラメーターは関数によって追加されたラベルにのみ作用します。このような:
plot (
x, y, type="o",
xlab = "", #Don't include xlab in main plot
ylab = "Y values",
cex.axis = "2",
cex.lab = "2",
las = 1
)
title(xlab="X values"
,mgp=c(6,1,0)) #Set the distance of title from plot to 6 (default is 3).