web-dev-qa-db-ja.com

ShinyのfluidRow内のプロットの中央揃え

いずれかの列にプロットが描画されたfluidRowがあります。 renderPlot({create plot here}、width = ##)関数を使用して手動でプロットの幅を指定した場合、プロットを中央に配置する方法を知りたい(したがって、列の幅全体を占めない) 。

ui.Rコード:

setwd("C:/Users/Nate/Documents/R Working Directory/appFolder/example")
shinyUI(fluidPage(
titlePanel("Test"),
sidebarLayout(
sidebarPanel(
p('stuff here')
  ),
mainPanel(
tabsetPanel(id = 'tabs1',
          tabPanel("main",
                   fluidRow(
                     column(8,
                            plotOutput('plot1')),
                     column(4,
                            p('2nd column'))),
                   fluidRow(
                   p("2nd row of viewing area"))
                   ),

          tabPanel("second",
                   p("main viewing area")),
          tabPanel("third",
                          p('main viewing area')
                   )
))
)
))

server.Rコード:

shinyServer(function(input, output, session) {
output$text1 = renderText({
paste("text output")
})
output$plot1 = renderPlot({
x = runif(10,0,10)
y = rnorm(10)
plot(x,y)
}, width = 300)
})
23
Nate Gilbraith

align="center"は、column式内に含めることができます(ただし、plotOutput内ではありません)。例えば.

fluidRow(
  column(8, align="center",
    plotOutput('plot1')
  )
)
47
Ewen