別のリアクティブ コンテキストにプルしたい光沢のあるアプリの renderPlot オプション内にコードがあります。しかし、その方法を理解するのに苦労していますが、それでも表を参照できます。
私が望むのは、最初のセクションを独自のリアクティブ コンテキストにプルし、renderPlot で参照できるようにすることですが、マトリックスのデータ ソースが入力の 1 つを条件としていると考えると、その方法がわかりません。 . 前もって感謝します!
現在のコード:
output$distPlot <- renderPlot({
if (input$predictor == "bin") {matrix(0,ncol=1, nrow=input$n) -> predictor; predictor[1:input$pos] <- 1}
if (input$predictor == "norm") {predictor <- matrix(rnorm(input$n,input$pred_mean, input$pred_sd),ncol=1,nrow=input$n)}
if (input$predictor == "user") {inFile <- input$predictor2; predictor <- as.matrix(read.delim2(inFile$datapath, header=F), ncol=1)}
....
data <- sim(input$n,input$coverage[1], input$coverage[2], predictor)
....
})
望ましいコード (概念)
predictor <- reactive({
if (input$predictor == "bin") {matrix(0,ncol=1, nrow=input$n) -> predictor; predictor[1:input$pos] <- 1}
if (input$predictor == "norm") {predictor <- matrix(rnorm(input$n,input$pred_mean, input$pred_sd),ncol=1,nrow=input$n)}
if (input$predictor == "user") {inFile <- input$predictor2; predictor <- as.matrix(read.delim2(inFile$datapath, header=F), ncol=1)}
})
output$distPlot <- renderPlot({
data <- sim(input$n,input$coverage[1], input$coverage[2], predictor)
....
})