gpt4 book ai didi

R:从命令行运行脚本时显示绘图

转载 作者:行者123 更新时间:2023-12-03 23:51:20 27 4
gpt4 key购买 nike

从命令行执行R脚本时如何显示带有ggplot图形的窗口(没有中间保存到文件)?

示例脚本 test.R

#!/usr/bin/env Rscript

library(ggplot2)
p = ggplot(aes(x = Sepal.Length), data = iris) + geom_histogram(color = 'black', fill = NA)
plot(p)

在命令行上使用 ./test.R 运行脚本.
这会将绘图转储到 Rplots.pdf - 相反,我想要一个窗口,就像在与绘图的交互式 session 中一样,没有文件输出。

如何指定输出设备为屏幕? (例如在 Ubuntu 上)

最佳答案

您可以通过调用 X11() 来完成此操作。 ,这将打开一个图形窗口。 help("X11") 的一些相关摘录:

on Unix-alikes ‘X11’ starts a graphics device driver for the X Window System (version 11). This can only be done on machines/accounts that have access to an X server.

Usage:

X11(display = "", width, height, pointsize, gamma, bg, canvas, fonts, family, xpos, ypos, title, type, antialias)

Arguments:

display: the display on which the graphics window will appear. The default is to use the value in the user's environment variable ‘DISPLAY’. This is ignored (with a warning) if an X11 device is already open on another display.



但是,它会在 R 脚本执行完毕后立即关闭。因此,这可以显示您的情节,但它不会长时间打开:
#!/usr/bin/env Rscript

library(ggplot2)
p = ggplot(aes(x = Sepal.Length), data = iris) +
geom_histogram(color = 'black', fill = NA)
X11()
plot(p)

我想真正的问题是
  • 为什么你不愿意在查看之前保存情节?和
  • 如果您想打开绘图窗口但不保存绘图,为什么不在交互式 R session 中运行命令?如果您不保存结果,这在我看来更有用。
  • 关于R:从命令行运行脚本时显示绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57347150/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com