问题标签 [shiny-server]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 闪亮服务器中缺少的软件包
我正在尝试使用闪亮创建一个 Web 应用程序。它需要我加载已安装在计算机上的软件包。例如:
如果我在本地运行它(使用runApp
),这工作正常,但是当我尝试通过我的服务器(同一台计算机)运行它时,我收到plyr
未安装包(或我尝试以这种方式使用的任何其他包)的错误。我怎么能在闪亮的服务器中使用额外的包?
macos - 在 Mac OS X 上安装 Shiny
我正在尝试在我的 MacBook 上安装 Shiny,并且想知道是否有人可以帮助我这样做。
我曾尝试在线查找说明,但我发现其中大部分是针对 Ubuntu 的。
我以前开发过静态网页,但它们不包含 .R 代码。我想建立一个简单的网页,允许用户有选择地绘制一些数据(例如,绘制 Y v/s X 为下拉菜单中可能的 9 个值中的第三个变量的 1 个值)。
如果有人可以指导我在我的 OS X 机器上设置 Shiny 服务器或提供一个基本示例,我将非常感谢社区。我可以在 R Studio中运行 Shiny 提供的示例,但无法使用 Web 浏览器运行它们。
谢谢。- AK
r - 获取 Rook/Shiny 页面用户的私有 IP 地址
我创建了一些网络应用程序,使用Rook
它在端口 8000 处监听我的网络 ip (192.168.xx.xx)。我办公室里的每个人都可以连接到他们,只需http://192.168.xx.xx:8000/page_name
在浏览器中输入。我需要监控这些页面的使用情况,并想知道如何获取连接到它们的网络 IP 地址。
我在 Web 开发方面没有经验,从目前所做的研究来看,使用客户端代码似乎JavaScript
很难(几乎不可能)实现这一点,(如果我错了,请纠正我)。所以,我的问题是:有没有办法在 Rook 应用程序中使用服务器端代码获取网络客户端 IP?(如果需要,我愿意更改网络服务器,任何解决方案都值得赞赏)。
如果我的问题看起来令人困惑,请提前感谢和抱歉......特别是我不确定是否需要其他标签。
编辑:我也会接受使用不同于Rook
(但仍在R
)的答案
编辑 2:我在此链接之后设置了 Shiny Server 。根据@Thell,我正在配置服务器以获得access_log
包含我需要的信息的信息。在shiny-server.conf
我添加了相关语句,现在是:
最后一行应该告诉闪亮将 access_log 写入我的主文件夹。然而什么也没发生,日志仍然是空白的。根据这里,在格式部分,我应该收到以下日志之一:
取决于您是保留默认格式还是更改它。
rstudio-server - grobToDev.default(gTree,dev)中的错误
我正在尝试使用闪亮+gridSVG 构建应用程序。这个问题经常发生,我对此一无所知。
我的服务器.R:
这是我的js:
控制台中的错误消息是:
有人知道原因吗?
r - 允许用户修改数据的闪亮 R 应用程序
这还不是一个实际问题,而是一个理论问题。我正在考虑使用 Shiny 以交互方式显示一些原始数据。这可以。
但是 - 是否可以让用户更改显示的数据?
假设我有一堆滑块供用户限制基础数据以满足某些条件并显示这些观察结果 - 是否可以允许用户对该数据进行修改并将这些修改发送回服务器,这反过来保存这些更改?
我正在考虑用户可能使用 Shiny Application 浏览数据并检测数据中潜在异常值的场景——然后用户可以将这些标记为异常值。但是,该信息需要传回服务器。
这样的应用可能吗?有一些现有的例子吗?
authentication - 身份验证令牌、本地存储和流星
我们正在运行一个 Web 应用程序(shiny-server,其中的编码是在 R 中完成的)并希望向它添加一个身份验证层。我没有在 R 中构建一些东西来执行此操作,而是考虑使用流星来创建身份验证令牌等等。这是我想这样做的方式:
- 用户使用流星登录,流星创建一个看起来像这样的数据库条目:
- 用户被重定向到“旧应用程序”。在这里我们检查本地存储(如果我们使用相同的面向外的主机和端口,应该是与流星相同的本地存储,对吗?)并找到以下信息:
- 本地存储数据由“其他应用程序”调查,它对流星数据库进行简单的数据库查询,以验证本地存储信息是否与数据库中的信息匹配。也许还要检查某种到期日期。如果匹配,则应用程序呈现,否则不呈现。
这是一种相当安全的方法吗?它会在应用程序之间共享本地存储吗?
r - 闪亮/ rscript - 使用checkboxGroupInput整数列表的反应图不起作用
我正在使用 rgdal 和 RSAGA 插件开发一些带有 R 脚本的地理分析软件。我最近发现了闪亮的插件,我很高兴将我的循环控制器包装在 UI 中是多么容易。不幸的是,我遇到了所需的反应功能问题,使复选框组值(那些是单独的生态区)在复选框中绘制每个选定生态区轮廓的反应预览。
我有一个带有 110 个生态区(244、278、302 等)的整数列表的 checkboxGroupInput 和一个用于反应输出的 outputPlot 处理程序。
为了获得要点,读取形状文件以提取复选框组('ed_all')的生态区列表,并提取具有每个生态区轮廓的形状('xcheck')。从本质上讲,我正在尝试完成两件事:
1 - 制作一个反应变量“ed_list”,它会在使用复选框选择生态区时更改整数列表
2 - 使用反应变量“ed_list”和“xcheck”形状进行反应多边形相交,以绘制所选生态区的反应图。
我目前正在使用包裹在响应式命令中的 rsaga.geoprocessor 来进行交集,但如果有更好的方法,我愿意接受建议。每次我尝试执行此代码时,它都会给我...
“.getReactiveEnvironment()$currentContext() 中的错误:如果没有活动的反应上下文,则不允许操作。(您试图做一些只能从反应函数内部完成的事情。)”
或类似的东西。
以下是与我的问题相关的剪辑代码:
这是代码的服务器部分..
r - 以固定的时间间隔更新图形/绘图
我在 Shiny UI 中有一个情节。如果我更改任何输入参数并且通过反应性图将会改变。但是让我们考虑以下情况:- Shiny UI 绘图中的情节让我们说股票的日内价格变动。为此,您查询一些实时数据源。现在,如果我创建一个刷新按钮,然后如果时间过去了,我会继续单击刷新按钮。随着时间进入该实时数据源,该图将随着新数据的到来而更新。现在我的问题是我不想一直点击刷新按钮。但是我想用计时器运行一个循环,以便它会检查固定的时间间隔,并且一旦有新数据出现,绘图就会自动更新。某种 Google Finance Graphs 会随着时间的推移不断更新。
所以问题可以简化如下:-让我们从 Shiny 本身考虑这个例子:- ui.R
和服务器.R
现在我想在没有任何输入活动的情况下从正态分布生成一个不同的随机样本。所以基本上我想打电话
再次不更改滑块输入。请帮我找出如何做到这一点。
r - Shiny - 如何在操作按钮中为 source()-ed 脚本编写并行处理代码?
我的 R 脚本是高度可变的,因此我将其分解为一系列由控制器脚本运行的 source() 编辑的 R 文件。如果我想运行一个脚本,我会创建一个对象并使用条件语句包装 source()-ed 脚本。我想使用闪亮的可编程小部件来控制输入,但我仍然希望能够自由地通过 RStudio 运行代码。为了在 R 中运行它,我创建了一个 Rlauncher 脚本,您可以在其中手动设置对象参数和 source() 控制器脚本。不幸的是,使用 SHINYlauncher (server.R),隔离所有输入和运行脚本所需的包装 actionButton() 需要代码在闪亮的 .GlobalEnv 中运行。我想出了一个部分解决方案来运行服务器。R 与原始脚本平行,但我无法绕过 source()-ing .GlobalEnv 中的控制器脚本。任何有关如何在 parent.frame() 中运行控制器脚本的环境的帮助都会很棒!
这是我的原始代码。如果我在运行控制器脚本时将对象加载到 .GlobalEnv 上,一切正常,但渲染一批地图需要 WEEKS 时间...
这段代码模仿了我从其他工作示例中看到的并行编码。它将创建对象并运行控制器脚本,但我似乎仍然无法让它在 parent.frame() 中运行。
此代码还创建对象,但没有正确运行控制器脚本。我试图让两个函数针对同一个输入执行,其中 source() 编辑的代码是一个延迟函数。
html - 没有定义 UI (shiny-server)
我使用 shiny-server 运行我的闪亮应用程序,并创建了应用程序使用 index.html 文件,问题是运行应用程序时,闪亮服务器抛出 No UI defined 消息,所以我尝试运行应用程序本地并且它工作正常,但我发现,如果应用程序进入闪亮服务器的“www”目录并使用 runApp() 函数运行,我会遇到同样的问题(trhow 没有 UI 消息),但如果我在 sudo 模式下运行它工作正常。
有人知道如何将权限 sudo 设置为 shiny-server?,因为我像“sudo shiny-server”一样运行服务器但它不起作用,或者我可以更改应用程序的位置?