私はgigvisチャートを、ユーザーの入力とインタラクティブにしたいという私の光沢のあるアプリに入れました。ggvisチャートのメインタイトルをShiny入力で対話的にする
次の投稿:Add a plot title to ggvis、私はチャートにタイトルを追加できましたが、明らかにインタラクティブにすることは思ったほど単純ではありません。
以下は最小再現可能な例です。
library(shiny)
library(ggvis)
example <- data.frame(a=c("apple", "pineapple", "grape", "peach"), b=11:14)
ui <- fluidPage (
selectInput(inputId="option",
label=NULL,
choices= levels(example$a),
selected="apple"),
ggvisOutput("chart")
)
server <- function(input, output) {
dataTable <- reactive({
df <- example[example$a==input$option, ]
df
})
ggvis(data=dataTable, x=~a, y=~b) %>%
layer_bars() %>%
add_axis("x", title="fruits") %>%
add_axis("x", orient = "top", ticks = 0, title = "???", #I want: paste("chosen option is", input$option),
properties = axis_props(
axis = list(stroke = "white"),
labels = list(fontSize = 0))) %>%
bind_shiny("chart")
}
shinyApp(ui=ui, server=server)
ありがとうございました。ご使用のサーバー用
貼り付けと同じようにタイトルを付けることができます。しかし、これを動作させるには 'ggvis'の部分を' ggivs(... ')から' bind_shiny'を使って 'observe({}) 'にラップする必要があります。 –
私は理解していません。私はobserve()をShinyでまだ使っていません...また、なぜこれがエラーを投げているのか知っていますか? – chungkim271