【问题标题】:using RStudio as an pseudo shiny app使用 RStudio 作为伪闪亮的应用程序
【发布时间】:2016-12-01 04:36:07
【问题描述】:

这是一个相当笼统且有趣的问题。

我正在开发一个中等复杂的闪亮应用程序,使用自定义 HTML 和 Javascript 代码(带有菜单和独立对话框),使用闪亮作为与基础 R 的通信协议。一切看起来都很好,直到我意识到 RStudio 本身就是一个网页(或者我错了吗?)

在闪亮的应用程序中设计 GUI 的主要原因是它是跨平台的,但它仍然需要在网络浏览器中打开。相反,RStudio 也是一个网页,但打开时就像任何其他已安装的软件一样。对我来说,它看起来像是一个带有不同菜单的独立网络浏览器。

现在的问题是:是否可以在不同的“应用程序”中使用 RStudio 的某些部分? 例如,我希望将代码编辑器和控制台从 RStudio 中分离出来,并将它们与其他 HTML 和 Javascript 代码结合使用,以生成类似于 RStudio 但用途不同的 GUI。

为了更好地解释原因:RStudio 很棒,但它有一个很大的缺点(不是有意的,其他人认为这是一个功能),所有内容都必须放在同一页面中。为了使代码编辑器更大,需要缩小界面的其他部分。我想让它们分开对话框,在选择菜单时创建 div。

提前致谢, 阿德里安

【问题讨论】:

  • 可能无关紧要,但我们可以pop out the editor window 使其更大。
  • 太棒了...朝着灵活的 UI 方向迈出了非常好的一步。其他窗格仍在争夺相同的空间,但这已经好得多了。不过,这个问题仍然很有趣:可以从 RStudio 中“提取”一些部分(模块)并在上面构建其他东西吗?

标签: r user-interface shiny rstudio


【解决方案1】:

来自 RStudio 的工程师。您对 RStudio 本身是“网页”是正确的;整个 UI 都是用 HTML 有效地完成的。甚至还有一个 RStudio 版本已经在称为 RStudio Server 的 Web 浏览器中运行。

不幸的是,没有可扩展点来做你想做的事。 RStudio 内部在很大程度上是匿名的,并且与外部访问隔离,这使得它们难以分离、重用或连接到其他服务。不过,这里有一些可能会有所帮助的建议:

  • 正如评论者所指出的,现在可以弹出编辑器窗口。
  • 您可以创建一个RStudio Add-in,它在调用时会在单独的浏览器窗口中运行。根据您想在单独的窗口中执行的操作,您可以使用加载项来完成。

如果您不能使用插件,最简单的做法实际上就是更改 RStudio 本身。这是一个open source project,所以欢迎您破解它并改进可重用性或 UI 灵活性。我们欢迎拉取请求。 :-)

【讨论】:

  • 感谢您的回复,乔纳森。这是我所期望的,最终破解 RStudio 以获得我想要的东西......有一天我可能会(尝试)这样做。我的目标是类似于 R 中的 QCAGUI 包,但像 RStudio 一样打开(类似于已安装的程序),而不是作为在 Web 浏览器中打开的闪亮应用程序。
猜你喜欢
  • 2014-08-12
  • 2017-06-08
  • 2021-09-23
  • 2023-04-11
  • 2014-10-29
  • 1970-01-01
  • 2018-09-21
  • 1970-01-01
  • 2016-02-09
相关资源
最近更新 更多