如何调整sidebarPanel的宽度而不影响R Shiny中的后续sidebarPanel宽度

时间:2013-12-03 05:31:55

标签: r shiny

我正在尝试更改R Shiny中sidebarPanel的宽度,以便我的mainPanel有更多'空间'来并排显示两个图形。图形显示在mainPanel中各自的sidebarPanel中。因此,有三个sidebarPanel:第一个用于数据选择/选择显示在剩余的两个sidebarPanel中。

但是,当我更改第一个sidebarPanel的宽度时,所有sidebarPanel都采用此宽度。我该如何防止这种情况发生?

我正在使用的ui.r代码作为示例在以下位置找到: https://github.com/EconometricsBySimulation/2013-06-11-Shiny-Exploration/blob/master/ui.R

server.r代码示例位于: https://github.com/EconometricsBySimulation/2013-06-11-Shiny-Exploration/blob/master/server.R

我使用以下内容调整ui.r中第一个sidebarPanel的宽度:

left=sidebarPanel(
         tags$head(
           tags$style(type="text/css", "select { width: 100px; }"), # defines width of dropdown panel
           tags$style(type='text/css', ".span4 { max-width: 150px; }") # defines width of panel containing dropdown panel
           ),

但是如上所述,这会导致后续面板占据其宽度。 关于如何保持第一个侧边栏宽度的这个或更窄的设置,以及第二个(中间)和第三个(右侧)侧边栏的宽度是否是剩余空间宽度的一半的任何想法?

非常感谢提前!

1 个答案:

答案 0 :(得分:5)

使用sidebarPanel看起来有点扭曲,wellPanel可能是更好的选择。请尝试以下方法:

 left=wellPanel(
   tags$style(type="text/css", '#leftPanel { width:200px; float:left;}'),
   id = "leftPanel",
   selectInput .... as before

这会给面板一个id并指定为样式。为其他小组做类似的事情。