Подтвердить что ты не робот

Блестящая диаграмма распределения пространства

В приведенном ниже примере показаны 4 группы в 4 панелях вместе. Но проблема в том, что они, похоже, живут в одной сетке. Можно ли контролировать размер диаграмм в блестящем выходе? (т.е. так, чтобы при запуске приложения не было полосы прокрутки справа). Я пытался контролировать высоту и ширину, но это, похоже, только контролирует изображение внутри самой сетки... любые идеи?

спасибо

shinyUI(pageWithSidebar(
  headerPanel("Example"),
  sidebarPanel(   

  ),

  mainPanel(
    tabsetPanel(tabPanel("Main",plotOutput("temp"))

    )#tabsetPanel  

  )#mainPane;

))



shinyServer(function(input, output) {

  output$temp <-renderPlot({
     par(mfrow=c(2,2))
     plot(1:10)
     plot(rnorm(10))
     plot(rnorm(10))
     plot(rnorm(10))
  }, height = 1000, width = 1000)


})
4b9b3361

Ответ 1

plotOutput имеет параметры высоты и ширины; ширина по умолчанию равна "100%" (что означает 100% доступной ширины в контейнере), а высота по умолчанию - "400px" (400 пикселей). Попробуйте поэкспериментировать с этими значениями, изменив их на "auto" или "1000px".

renderPlot Параметры высоты и ширины управляют размером сгенерированного файла изображения в пикселях, но не влияют непосредственно на отображаемый размер на веб-странице. Их значения по умолчанию: "auto", что означает, обнаруживает и использует ширину/высоту соответствующего plotOutput. Поэтому, когда вы установите ширину и высоту на plotOutput, вам вообще не нужно устанавливать ширину и высоту на renderPlot.

shinyUI(pageWithSidebar(
  headerPanel("Example"),
  sidebarPanel(   

  ),

  mainPanel(
    tabsetPanel(tabPanel("Main",plotOutput("temp", height = 1000, width = 1000))

    )#tabsetPanel  

  )#mainPane;

))



shinyServer(function(input, output) {

  output$temp <-renderPlot({
     par(mfrow=c(2,2))
     plot(1:10)
     plot(rnorm(10))
     plot(rnorm(10))
     plot(rnorm(10))
  })


})