【问题标题】:External graphical device for littler or Rscriptlittler 或 Rscript 的外部图形设备
【发布时间】:2011-12-11 18:22:18
【问题描述】:

我真的很喜欢 littler 非常适合使用 R 编写脚本。但我不知道如何使用 gnuplot 等外部图形设备(例如使用 Octave)。 我能够生成所需的图表,但我必须使用 Sys.sleep 而我不想这样做,因为我想以交互方式关闭它,或者更好地在不关闭设备的情况下继续脚本。

到目前为止,这是我的代码的样子:

#!/usr/bin/env r -t


suppressMessages(require(Cairo))

CairoX11()
plot(rnorm(1000), pch = 19)
Sys.sleep(50)

# some code without closing the graphics window

我的问题是:您知道实现这一目标的方法吗?

任何提示、文档、链接或代码将不胜感激

【问题讨论】:

    标签: r graphics rscript


    【解决方案1】:

    除了 John 的建议之外,您还可以明确调用其中一个 GUI 包来调出一个新的“框架”(或“窗口”),然后显示该图。这将一直显示在屏幕上,直到用户(或外部事件)终止该窗口。

    tcltk 包可以与tkrplot 包一起使用;这是最便携的。 RGtk2 更现代,但更难在 Windows 上安装/使用,因为 Gtk2 并不完全是本地的。还有更多——在此处和 intertubes 的其他地方搜索 R GUI。

    【讨论】:

    • 首先,我要感谢你(和 Jeffrey Horner),因为它比 Rscript 更有用,也更容易使用(我什至现在用 R 在我的 kubuntu 中做一些系统管理员!!) .关于外部框架,你是对的,到目前为止,我尝试了 tkrplot、新的 r qt 界面(qtbase 和 qtpaint)甚至 gnuplot(通过 TeachingDemos),而且我终于找到了一种不使用 Sys.sleep 来保留我的 R 图形的方法(我改用定位器并右键单击以继续脚本)。我会尝试找到一个更优雅的问题解决方案。再次感谢
    • 很高兴能提供帮助。如果你有一个简洁的小演示,可能只涉及 tcltk 和 tkrplot,我很乐意将它添加到包中(当然也给予你充分的信任等)。你在这里问的是一个相关问题,我们应该提供一个示例解决方案。
    • 好主意,当我完成这项工作时,我很乐意向您发送一段可复制的代码或将其发布在此处。
    【解决方案2】:

    我不知道有什么方法可以做到这一点,因为这些是特意运行 R 的交互式方式。我只会在与 par(ask=T) 的交互式 R 会话中运行您的脚本。这样它就会在图形之间为用户暂停,就像 R 文档中的演示一样。

    【讨论】:

    • 感谢您的建议..但出于我的目的,我不能使用交互式 R 会话...
    猜你喜欢
    • 2011-03-13
    • 2016-08-10
    • 1970-01-01
    • 2011-06-18
    • 1970-01-01
    • 2011-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多