小编Jim*_*mbo的帖子

一旦所有其他反应完成变化,我如何确保闪亮的反应图仅改变?

我有一个闪亮的应用程序,用户在其中选择一组输入,例如x范围,y范围,缩放类型以及通过下拉列表选择数据集的特定子集.

这一切都是通过使用反应物来完成的.X和Y范围滑块输入对数据集选择的变化作出反应,因为必须再次找到最小值和最大值.这可能需要大约1-2秒,而闪亮的应用程序正在工作,用户在下拉列表中选择一个不同的选项.在这1-2秒期间,绘图将切换为使用旧的x和y范围绘制所选的新数据子集,然后在x和y范围滑块更改后快速切换到正确的绘图.

修复就是通过隔离其他所有内容来刷新按钮上的图.但是有没有办法让情节对变化保持反应,但是等到所有依赖事物都完成计算?

谢谢

这是情节:

output$plot1 <- rCharts::renderChart2({    
    if(!is.null(input$date_of_interest) && 
         !is.null(input$xrange) && 
         !is.null(input$yrange) &&
         !is.null(data()) &&
         isolate(valid_date_of_interest())) {
      filtered_data<- dplyr::filter(isolate(data()), id==input$choice)
      p <- tryCatch(plot_high_chart(
                           data,
                           first_date_of_interest = input$date_of_interest, 
                           ylim = input$yrange,
                           xlim = input$xrange), 
                    error = function(e) e, 
                    warning = function(w) w)
      if(!inherits(p, "error") && !inherits(p, "warning")) {
        return(p)
      }
    } 
    return(rCharts::Highcharts$new())
  })
Run Code Online (Sandbox Code Playgroud)

和x范围(y范围相似):

output$xrange <- renderUI({
    if(!is.null(input$date_of_interest) && 
       !is.null(input$choice) &&
       !is.null(valid_date_of_interest()) &&
       isolate(valid_date_of_interest())) {
          temp_data <- dplyr::filter(isolate(data()), date == input$date_of_interest)
          temp <- data.table::data.table(temp_data, key = "child.id")
          the_days <- as.double(as.Date(temp$last.tradeable.dt) …
Run Code Online (Sandbox Code Playgroud)

r shiny

19
推荐指数
1
解决办法
9968
查看次数

找到dplyr mutate内的cummax指数?

我有以下代码:

library(dplyr)
set.seed(10)
test<-data.frame(x=runif(10,0,1),y=rep(c(1,2),5))
test <- test %>%
  group_by(y) %>%
  mutate(max_then=cummax(x))

test
Run Code Online (Sandbox Code Playgroud)

哪个输出

Source: local data frame [10 x 3]
Groups: y

            x y  max_then
1  0.50747820 1 0.5074782
2  0.30676851 2 0.3067685
3  0.42690767 1 0.5074782
4  0.69310208 2 0.6931021
5  0.08513597 1 0.5074782
6  0.22543662 2 0.6931021
7  0.27453052 1 0.5074782
8  0.27230507 2 0.6931021
9  0.61582931 1 0.6158293
10 0.42967153 2 0.6931021
Run Code Online (Sandbox Code Playgroud)

我想添加另一个变异列,它将添加从中计算max_then的rownumber/index.我想它会像下面这样.但我真的无法让它发挥作用.

test %>%
 group_by(y) %>%
     mutate(max_then-cummax(x),
            max_index=which(.$x==max_then))
Run Code Online (Sandbox Code Playgroud)

预期产出是:

            x y  max_then max_index
1  0.50747820 1 …
Run Code Online (Sandbox Code Playgroud)

r dplyr

8
推荐指数
1
解决办法
517
查看次数

如何在Dygraphs中缩放点?

我正在使用R的伟大dygraphs包(https://rstudio.github.io/dygraphs/)

我现在的代码是:

james<-mtcars[c("mpg","drat")]
james$date<-seq(from=as.Date("2013-05-16"),to=as.Date("2013-06-16"),by="days")
x <- xts::xts(james$mpg, order.by = james$date)
p <- dygraphs::dygraph(x, main = "mpg over time", xlab = "Date", ylab = "mpg") %>%
     dygraphs::dyRangeSelector() %>% 
     dyOptions(drawPoints = TRUE, pointSize = 2)
p
Run Code Online (Sandbox Code Playgroud)

我想缩放p中的点大小james$drat,而不是将其固定为2.

我怎样才能做到这一点?

javascript r dygraphs

7
推荐指数
1
解决办法
558
查看次数

在闪亮的应用程序中为 rbokeh 图设置 xlim

我正在为 R使用rbokeh 包。我在集成到一个闪亮的应用程序中取得了一些不错的结果。我现在想集成一个功能,其中dateRangeInput现在将选择图表的日期范围(它是时间序列数据)。

##necessary packages

install.packages("shiny")
install.packages("devtools")
install.packages("dplyr")
library(devtools)
devtools::install_github("ramnathv/htmlwidgets")
devtools::install_github("bokeh/rbokeh")
library(rbokeh)
library(dplyr)
library(shiny)

#example data set

james<-mtcars[c("mpg")]
james$date<-seq(from=as.Date("2013-05-16"),to=as.Date("2013-06-16"),by="days")
james$index<-1:4

#shiny app

shiny_example <- function(chart_data = james){

  date_minmax <- range(chart_data$date)

  shinyApp(
    ui=fluidPage(
      titlePanel("a plot"),
      sidebarLayout(
        sidebarPanel(
          textInput("index","Enter the index from 1 to 16",value=1),
          uiOutput("date_range")
        ),
        mainPanel(
          rbokeh::rbokehOutput("plot_cars")
        )
      )
    ),
    server=function(input,output,session)
    {
      current_data <- reactive({
        current_df <- subset(james,index==input$index)
        return(current_df)
      })
      output$date_range <- renderUI({
        plot_data <- current_data()
        current_id_range <- range(plot_data$date)
        return(
          dateRangeInput("date_range",
                         "Date Range(X Axis", …
Run Code Online (Sandbox Code Playgroud)

r shiny bokeh rbokeh

5
推荐指数
1
解决办法
654
查看次数

在 Shiny 中用于滑块输入的自定义播放按钮?

http://shiny.rstudio.com/reference/shiny/latest/sliderInput.html表示您可以使用 HTML 标签或字符向量修改滑块输入中播放按钮的外观。我希望我的播放按钮更大一点或者使用图像,但我无法完全让它工作,并且无法在 Google 上找到使用 playButton 或pauseButton 参数的人的示例。有小费吗?

添加以下内容作为参数:

playbutton=HTML("<img src=\"~/www/play.png\">")
Run Code Online (Sandbox Code Playgroud)

给出未使用的参数错误

r shiny

4
推荐指数
1
解决办法
3500
查看次数

标签 统计

r ×5

shiny ×3

bokeh ×1

dplyr ×1

dygraphs ×1

javascript ×1

rbokeh ×1