📅  最后修改于: 2023-12-03 14:41:14.089000             🧑  作者: Mango
Flexdashboard is a package for building dashboards with R using the flexbox layout. It is built on top of the R Markdown and Shiny frameworks, which allows for the integration of code, visualizations, and user input.
To install the flexdashboard package, use the following command:
install.packages("flexdashboard")
Flexdashboard allows for the creation of simple to complex dashboards. To get started, create a new R Markdown file using the "Flex Dashboard" document type:
---
title: "My Dashboard"
output:
flexdashboard::flex_dashboard:
orientation: rows
---
The orientation
parameter determines whether the dashboard should be arranged in rows or columns.
In the body of the document, flexdashboard uses a combination of markdown
, html
and R code chunks
to build the dashboard.
The markdown
syntax is used to create static text and headings. For example:
## My Dashboard
Welcome to my dashboard. This dashboard will provide insight into my data analysis.
The html
syntax is used to create interactive elements such as plots and tables. For example:
```{r}
library(ggplot2)
ggplot(mtcars, aes(x = disp, y = hp)) +
geom_point()
The `R code chunk` syntax is used to execute R code and display the results. For example:
library(dplyr)
# Counting the number of observations in a dataset
nrow(mtcars)
## Layout and Appearance
Flexdashboard provides several built-in layout templates that can be customized. Additionally, it allows for full customization of the layout using CSS.
Templates can be set in the YAML header of the R Markdown file. For example:
The `theme` parameter specifies the style of the dashboard.
Custom CSS can be added in a separate CSS file and linked to the R Markdown file. For example:
## Dashboards with Shiny
Flexdashboard can also be used in conjunction with Shiny to create dashboards that allow for user input and reactive output.
To include Shiny elements in a flexdashboard, add a `runtime: shiny` parameter to the YAML header. For example:
Then, add Shiny code to create input elements and reactive output. For example:
library(shiny)
selectInput(inputId = "variable",
label = "Select a variable:",
choices = names(mtcars))
renderPlot({
ggplot(mtcars, aes_string(x = input$variable, y = "hp")) +
geom_point()
})
Overall, flexdashboard provides a powerful tool for creating dynamic and interactive dashboards in R. With easy-to-use templates and the ability to fully customize layouts, it is a great option for data visualization and reporting.