如何更改当前的绘图窗口大小(在R中)

Tal*_*ili 17 graphics plot r window base

例如.假设我这样做:

dev.new(width=5, height=4)
plot(1:20)
Run Code Online (Sandbox Code Playgroud)

现在我想做

plot(1:40)
Run Code Online (Sandbox Code Playgroud)

但我想要一个更大的窗口.

我猜这样做的方法是(假设我不想打开一个新窗口)

plot(1:40, width=10, height=4)
Run Code Online (Sandbox Code Playgroud)

这当然不起作用.

我看到的唯一解决方案是关闭窗口并启动一个新窗口.(这将结束我的绘图历史)

有没有更好的办法 ?

谢谢.

pmr*_*pmr 13

一些解决方法可能是使用dev.new()R函数而不是使用此函数,该函数应该跨平台工作:

 dev.new <- function(width = 7, height = 7) 
 { platform <- sessionInfo()$platform if (grepl("linux",platform)) 
 { x11(width=width, height=height) } 
 else if (grepl("pc",platform)) 
 { windows(width=width, height=height) } 
 else if (grepl("apple", platform)) 
 { quartz(width=width, height=height) } }
Run Code Online (Sandbox Code Playgroud)


Tal*_*ili 10

这是我的解决方案:

resize.win <- function(Width=6, Height=6)
{
        # works for windows
    dev.off(); # dev.new(width=6, height=6)
    windows(record=TRUE, width=Width, height=Height)
}
resize.win(5,5)
plot(rnorm(100))
resize.win(10,10)
plot(rnorm(100))
Run Code Online (Sandbox Code Playgroud)

  • 这将"仅适用于Windows".没有其他系统具有功能`windows`,Brian Ripley试图向你解释. (5认同)