y轴标签落在图形窗口外?

low*_*rul 22 plot r

我尝试在R中绘制一些数据,y轴标签水平,y轴刻度标签左边.我认为下面的代码可行:

set.seed(1)
n.obs       <- 390
vol.min     <- .20/sqrt(252 * 390)
eps         <- rnorm(n = n.obs, sd = vol.min)
mar.default <- c(5,4,4,2) + 0.1
par(mar = mar.default + c(0, 4, 0, 0))               # add space to LHS of plot
pdf("~/myplot.pdf", width=5.05, height=3.8)
plot(eps,  main  =  "Hello  World!", las=1, ylab="") # suppress the y-axis label
mtext(text="eps", side=2, line=4, las=1)             # add horiz y-axis label
                                                     # 4 lines into the margin
Run Code Online (Sandbox Code Playgroud)

我的形象

相反,正如您所看到的,y轴标签几乎完全落在图形窗口之外.无论我扩大LHS边际多少,这种现象仍然存在.

问:我做错了什么?我需要对oma参数做些什么吗?我需要做什么来按照我的意图来绘制事物?所有这些让我有点不知所措!

jor*_*ran 34

这是一个经典的,也许应该是常见问题解答.您必须在调用设置par设置,这将创建绘图设备.否则,您将修改默认设备上的设置:pdf

set.seed(1)
n.obs       <- 390
vol.min     <- .20/sqrt(252 * 390)
eps         <- rnorm(n = n.obs, sd = vol.min)
              # add space to LHS of plot
pdf("~/myplot.pdf", width=5.05, height=3.8)
mar.default <- c(5,4,4,2) + 0.1
par(mar = mar.default + c(0, 4, 0, 0)) 
plot(eps,  main  =  "Hello  World!", las=1, ylab="") # suppress the y-axis label
mtext(text="eps", side=2, line=4, las=1)   
dev.off()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述