2012-11-09 10 views
5

私は輝くRで遊んできました。質問があります。Rスタジオの光沢のある条件文

マルチタブのマルチデータセットパッケージを作成したいと考えています。さまざまなデータセットがあまり関係していないので、私は、ユーザーが見たいものを選択し、そのために使用できるフィルタリングオプションが何であるかを変更できるようにしたい。

は、だから私はこのような何かをしたい

selectInput("variable", "Variable:", 
list(""Cylinders" = "cyl", 
"Transmission" = "am"), 

if (selectInput == "Transmission") { 
    sliderInput("integer", "Integer:", 
    min=0, max=1, value=0) }, 

else{ 

sliderInput("decimal", "Decimal:", 
      min = 0, max = 1, value = 1) } 

は、どのように私はシャイニーの条件をしますか?通常のR条件のように扱うとうまくいかないようです。

+3

+1私をR光沢に指向させるため:-) – January

+0

笑。それは非常にクールなようです。確かに、それは一度そのベータ版のものになるでしょう。 – cianius

答えて

10

conditionalPanelはあなたが望むものです。それが表示されているかどうか

selectInput("variable", "Variable:", 
list(""Cylinders" = "cyl", 
"Transmission" = "am"), 

conditionalPanel(condition = "input.variable == 'am'", 
    sliderInput("integer", "Integer:", 
    min=0, max=1, value=0)), 

conditionalPanel(condition = "input.variable == 'cyl'", 
sliderInput("decimal", "Decimal:", 
      min = 0, max = 1, value = 1)) 

http://rstudio.github.com/shiny/tutorial/#dynamic-uiは(私は実際にこのコードを実行しようとしていないが、あなたのアイデアを得ることができる必要があります)conditionalPanelだけでコントロールを隠していること

注意を、子コントロールがまだ存在していますか否か。サーバーロジックでは、input$integerまたはinput$decimalの存在をテストするのではなく、if (input$variable == 'am')を使用して、自分のモードを確認する必要があります(これはおそらく自然な方法です)。

+0

素晴らしいです。 Idはconditionalpanelを使用しようとしましたが、明らかに間違った形式を使用していました。感謝万円! – cianius

関連する問題