gpt4 book ai didi

r - 如何在 Shiny eventReactive 处理程序中监听多个事件表达式

转载 作者:行者123 更新时间:2023-12-03 05:18:18 35 4
gpt4 key购买 nike

我想要两个不同的事件来触发我的应用程序中各种绘图/输出所使用的数据的更新。一个是被单击的按钮 (input$spec_button),另一个是被单击的点上的点 (mainplot.click$click)。

基本上,我想同时列出两者,但我不知道如何编写代码。这是我现在拥有的:

在服务器中。R:

data <- eventReactive({mainplot.click$click | input$spec_button}, {
if(input$spec_button){
# get data relevant to the button
} else {
# get data relevant to the point clicked
}
})

但是 if-else 子句不起作用

mainplot.click 中出现错误$click |输入$spec_button:
运算仅适用于数字、逻辑或复杂类型

--> 是否有某种 Action 组合函数可以用于 mainplot.click$click |输入$spec_button子句?

最佳答案

我知道这已经很旧了,但我也有同样的问题。我终于弄明白了。您可以在大括号中包含一个表达式,并简单地列出事件/ react 对象。我(未经证实的)猜测是,shiny 只是对该表达式 block 执行与标准 reactive block 相同的 react 指针分析。

observeEvent({ 
input$spec_button
mainplot.click$click
1
}, { ... } )

编辑

已更新以处理表达式中最后一行返回 NULL 的情况。只需返回一个常量值。

关于r - 如何在 Shiny eventReactive 处理程序中监听多个事件表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34731975/

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