5

私は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条件のように扱うのはうまくいかないようです。

4

1 に答える 1

11

conditionalPanelあなたが望むものです。http://rstudio.github.com/shiny/tutorial/#dynamic-ui

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))

(実際にこのコードを実行しようとしたことはありませんが、アイデアを得ることができるはずです)

conditionalPanel はコントロールを非表示にするだけで、子コントロールは表示されているかどうかにかかわらず存在することに注意してください。サーバーロジックでは、 orif (input$variable == 'am')の存在をテストするのではなく、現在のモードを確認するために使用する必要があります (これはおそらく自然な方法です) 。input$integerinput$decimal

于 2012-11-09T21:03:21.227 に答える