5

我想创建一个带有导航栏的闪亮应用程序,但也能够使用流体行()和流体列()配置页面上的布局。

我在这里阅读了“导航栏页面”和“流体网格系统”区域http://shiny.rstudio.com/articles/layout-guide.html 并在流体网格系统下它说“创建基于流体系统的布局您使用了 fluidPage() 函数。” 所以这是我的例子:

服务器.r

shinyUI(navbarPage("",
                   tabPanel("test",
                            #THIS IS THE SIDEBAR INPUT PANEL
                            column(2,wellPanel(
                              selectInput("x", "x:", c(5, 10,30,60),selected = 5)
                            )),

                            #THIS IS THE MAIN CONTENT
                            column(10, 
                                   fluidRow( plotOutput("plot3")) #,

                                              #fluidRow( 
                                              #   column(width=5, plotOutput("plot2")),
                                               #  column(width=5, plotOutput("plot3"))      
                                             # )                                         
                            )#end of main body columns 
                   )#end tab panel

                                      ,
                                      tabPanel("summary",
                                               verbatimTextOutput("summary")
                                      ),
                                      navbarMenu("More Info",
                                                 tabPanel("Test1",
                                                          dataTableOutput("table")
                                                 )
                                      )
))


ui.r

library(shinydashboard)
library(reshape)
library(quantmod)
library(ggplot2)
library(reshape2)
library(scales)

shinyServer(function(input, output, session) {
  output$plot1 <- renderPlot({
    #plot(cars, type=input$plotType)
    plot(c(1))
  })

  output$plot2 <- renderPlot({
    #plot(cars, type=input$plotType)
    plot(c(100))
  })

  output$plot3 <- renderPlot({
    #plot(cars, type=input$plotType)
    plot(c(-2001))
  })


  output$summary <- renderPrint({
    summary(cars)
  })

  output$table <- renderDataTable({
    cars
  }, options=list(pageLength=10))
})#### END OF SHINY SERVER FUNCTION

所以上面的代码有效,它有一个导航栏。但我想在“测试”选项卡面板的 ui.r 页面上添加另一个流畅的行。你可以看到我注释掉了这些行:

                                  #fluidRow( 
                                  #   column(width=5, plotOutput("plot2")),
                                   #  column(width=5, plotOutput("plot3"))      
                                 # )    

我想取消注释它们并显示一个包含 2 列的流畅行。但是当我取消注释这些行时,应用程序不会返回任何内容。

那么是否有可能拥有一个导航栏页面并进行这样的流畅布局?

还是我需要使用fluidPAge() 而不是navBarPage()?但是那么你如何用fluidPage做一个导航栏?

4

2 回答 2

4

是的你可以。

它在文档中说您可以使用以下命令打开它fluid = TRUE

流体 TRUE 以使用流体布局。FALSE 使用固定布局。

于 2017-03-22T22:09:44.987 回答
0

根据我的经验,不是真的。我遇到了同样的问题,因为我想在导航栏布局中堆叠绘图。
您将不得不使用 tabsetPanel 来隔离您的内容 - 请参阅R Shiny navbarMenu上的FvD 的答案

于 2016-02-22T05:08:15.967 回答