使用flexdashboard模板重现闪亮

时间:2016-05-20 18:07:20

标签: r shiny shinydashboard flexdashboard

我从shinegallery中借用了以下代码并进行了一些更改。基本上这使用fluidPage。我有兴趣使用flexdashboard重做同样的事情。我已经完成了flexdashboard userguide。 但该网站上的描述是以某种rmarkdown或sweave格式?我不熟悉。因此,如果我可以在没有markdown或sweave的情况下看到此示例的flexdashboard版本,那么我可以轻松地与不同的组件相关联并在此基础上构建。任何提示或指示都是受欢迎的人。

library(shiny)
ui = shinyUI(fluidPage(
                mainPanel(
                 tabsetPanel(
                   tabPanel("Plot",plotOutput("plot1"),plotOutput("plot2")),
                   tabPanel("Summary",verbatimTextOutput("summary")),
                  tabPanel("Table",DT::dataTableOutput("table"))
                   ))))

server = shinyServer(function(input, output, session) {
  output$plot1 <- renderPlot({
    plot(cars)
  })

  output$plot2 <- renderPlot({
    plot(iris)
  })

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

  output$table <- DT::renderDataTable({
    DT::datatable(cars)
  })
})

shinyApp(ui, server)

1 个答案:

答案 0 :(得分:3)

我很快将它们放在一起。

不完美。但它通常可以完成工作(而且我必须离开工作,也许我今晚会稍微调整一下)

请注意,在此帖之前我还没有遇到flexdashboard。我曾经使用shinydashboard以及RMarkdown,所以这绝对有趣。不确定flexdashboard除了shinydashboard之外还会为我个人添加什么,但我肯定会更多地使用它。

总之...

---
title: "Test App"
output: flexdashboard::flex_dashboard
---

Plot
=====================================  

row 
-------------------------------------


```{r}
library(shiny)
renderPlot({
  plot(cars)
})
```

row 
-------------------------------------

```{r}
renderPlot({
  plot(iris)
})
```   


Summary
=====================================     

```{r}   
renderPrint({
    summary(cars)
  })
```


Table
=====================================     

```{r}   
DT::renderDataTable({
    DT::datatable(cars)
  })
```

一个很大的问题是,当我调用行时,我会在一行而不是两行中找到两个图。我会进一步发挥。