2016-07-21 11 views
0

私は光沢があり、htmlについて何も知らないので、同時にスライダと数値入力を得る方法を見つけるための問題があります私のアプリで同じ入力値。また、私は、たとえば、私は25の数値を設定する場合は、スライダが自動的にボタンを押すと25に自分自身を設定したいと思います。 ありがとうございます。 私はそれが関連するのですが、ここで私のサーバーのコードであれば知ってはいけない Shinyの同じ値の2つの入力

library(shiny) 
shinyUI(fluidPage(
    numericInput(inputId = "num1", 
       label = "Jour limite", 
       value = 10, min = 1, max=500), 
    sliderInput(inputId = "num", 
       label= "Jour limite", 
       value= 10 ,min=1 ,max=500 
), 
    actionButton(inputId="clicks", 
       label= "Actualiser"), 
    plotOutput("courbj") 

)) 

...私のUIのためではなく、それが動作しないことを試してみました:

print(getwd()) 
CourbeTot <- read.table("data/CourbeTot.csv",header=TRUE,sep=";") 



shinyServer(
    function(input,output) { 
    valeur <- eventReactive(input$clicks, { 
    (input$num) 
    }) 



    output$courbj <- renderPlot({ 
    plot(CourbeTot$DFSurvieTot.time,CourbeTot$DFSurvieTot.ProptionAuDelaDe,xlim=c(1,2*valeur())) 
    }) 

}) 
+0

私はこのようなものが必要だと思っています:http://stackoverflow.com/questions/21465411/r-shiny-passing-reactive-to-selectinput-choices – Jimbou

+0

これはなぜ私と同じ問題なのか分かりませんしかし、公正であるために私は彼の問題が何かを理解していないexaclty(英語は私の母国語ではない)申し訳ありません。しかし、私が誤解していないなら、彼の問題は私のものより少し複雑です。 – PaoloH

答えて

0

あなたが設定してみてくださいサーバーサイトのrenderUIを使用して、反応的な入力(スライダと数値)。ここでは、ここで

UI.R

library(shiny) 
shinyUI(fluidPage(
    uiOutput("INPUT"), 
    uiOutput("SLIDER"), 
    plotOutput("courbj") 
)) 

Server.R

library(shiny) 
print(getwd()) 
CourbeTot <- 1:10 

shinyServer(
    function(input,output) { 

    valeur <- reactive({ 
     S <- input$num 
     N <- input$num1 
     max(c(10,S,N)) 
    }) 

    output$courbj <- renderPlot({ 
     plot(c(CourbeTot,valeur())) 
    }) 

    # rective slider and numeric input 
    output$SLIDER = renderUI({ 
     sliderInput(inputId = "num", 
        label= "Jour limite", 
        value= valeur() ,min=1 ,max=500) 
      }) 

    output$INPUT = renderUI({ 
     numericInput(inputId = "num1", 
        label = "Jour limite", 
        value = valeur(), min = 1, max=500) 
    }) 

    }) 

再現可能な例を提供しなかったので、私は作成しました。スライダーと数値入力はそれぞれ別の入力に応じて変わります。これは、2つの入力のうちの1つによって設定された最高値を出力するmax関数ごとに行われます。そして。 2は入力がrenderUIを使用してサーバー側に移動されたことを示します。最初のNULLの問題のため、クリックボタンが削除されていることがわかります。このエラーが発生した場合、ある値を選択してクリックした後にもう一方の値を更新することはできません。これは既に尋ねられた光沢のあるバグのようですhere。コードは完璧ではありませんが、それは遊ぶのに適した基礎だと思いますし、あなたの目的に合わせて調整することができます。

+0

これは私が自分自身を非常に明確にしていなくても、私が意図したように見えます。私はアプリでこれを実装できるかどうか調べます。ありがとうございました。 – PaoloH

関連する問題