Я создаю небольшое приложение Shiny, в котором мой mainPanel
содержит tabsetPanel
, а одна из вкладок - это рикша rChart. Если у меня нет вкладок и отображается только rChart, все в порядке, но когда rChart содержится на вкладке, вкладка всегда короче диаграммы, что создает полосу прокрутки.
Я сократил приведенный ниже код многоточием, чтобы сосредоточиться на важных частях:
ui.R:
shinyUI(pageWithSidebar(
headerPanel("..."),
sidebarPanel(...),
mainPanel(
tabsetPanel(
tabPanel("Plot",
div(id = "myplot",
includeCSS("rickshaw.css"),
showOutput("plot", "rickshaw"))
),
tabPanel("Raw Data", tableOutput("table"))
)
)
)) # end shinyUI
сервер.R:
# some preprocessing up here
shinyServer(function(input, output) {
# generate checkbox options from preprocessed data
output$modelSelection <- renderUI({...})
# make the rickshaw rChart
output$plot <- renderChart2({
chart <- Rickshaw$new()
chart$layer(value ~ datetime, group = "variable", data = select.frame, type="area")
chart$set(width = 600,
height = 400,
slider = TRUE)
return(chart)
})
# make the raw output
output$table <- renderTable({...})
})
где rickshaw.css
и renderChart2
взяты из этой ошибки github для обеспечения интерактивности.
Итак, проблема в том, что, хотя высота в chart$set
работает, фактическая вкладка всегда немного короче, заставляя полосу прокрутки (все еще верно, когда slider=FALSE
).
В прошлом у меня была аналогичная проблема с ggplot с вкладками, которая была исправлена путем передачи аргумента высоты в plotOutput
, что не является вариантом с showOutput
.
Я нашел эти исправления, которые, по-видимому, работают для morris.js, но мне не удалось их адаптировать должным образом.
Кто-нибудь еще добился большего успеха с рикшей и панелями с вкладками? Я использую rCharts_0.4.2
и shiny_0.8.0
на R version 3.0.2 (2013-09-25)