R文档沟通|Dashboards入门(2)

简介: 关于仪表盘布局的总体规则是:• 一级标题:生成页面;• 二级标题:生成列(或行);• 三级标题:生成框(包含一个或多个仪表盘组件)。

排版


关于仪表盘布局的总体规则是:

  • 一级标题:生成页面;
  • 二级标题:生成列(或行);
  • 三级标题:生成框(包含一个或多个仪表盘组件)。

下面给出一个简单的例子:

---
title: "Get Started"
output: flexdashboard::flex_dashboard
---
```{r setup, include=FALSE}
library(flexdashboard)
```
Column 1
--------------------------------------------------
### Chart A
```{r}
```
Column 2
--------------------------------------------------
### Chart B
```{r}
```
### Chart C
```{r}
```

请注意,第一行文本(Coluumn 1)下的一系列破折号是第二级标题的另一种 Markdown 语法形式,即

Column 1
--------------------------------------------------

等同于

## Column 1

我们使用了一系列的破折号,只是为了让第二节在源文档中更为显眼罢了。

默认情况下,二级标题在仪表板上生成列,三级标题在列中垂直堆叠。所以在默认情况下,你不必在仪表盘上设置列,因为它默认会一列一列的垂直堆放显示。

:二级标题的内容将不会显示在输出中。二级标题仅用于布局(例如,例子中的Column 1不会显示在输出中),因此标题的实际内容一点都不重要。相比之下,一级标题和三级标题更加重要。

下图显示了上述示例的结果,一共是两列,第一列为 “Chart A”,第二列为 “Chart B” 和 “Chart C”。

:在这个例子中,我们没有在代码块中加入任何 R 代码,所以所有的框都是空的。当然在实际使用中,你可以编写任意的 R 代码来生成 R 图、HTML 小部件并将其加入到这些“盒子”中。

_X%BIC20GJ@O27L~LCIZSLY.png


1.基于行的布局

通过修改 orientation 选项将默认以列导向的布局改为以行导向的布局,例如:

output:
  flexdashboard::flex_dashboard:
    orientation: rows

这时二级结构中将会按照行进行排列,三级结构中会按照行中的列进行堆叠。我们将上述例子修改后,输出结果如图下所示:

S)$6LRDFB0V3ZK%JXLMYNTI.png


2.节属性

二级结构头部还可以加入一些属性,例如:设置列宽度为350:

A narrow column {data-width=350}
--------------------------------

在基于行布局的情况下,可以为行设置 data-height 属性。而基于列布局的情况下,可以使用 {.tabset} 使得三级结构以制表符的形式排列,例如:

Two tabs {.tabset}
------------------
### Tab A
### Tab B

所得结果如图下所示

image.gifEF%W]I@T_26H7H3Z8GCR}H2.png


3.多页

如果 rmd 文档中有多个一级结构的内容时,这时仪表盘会将每个一节结构分别显示为单独页面。下面给出一个简单的例子:

---
title: "Multiple Pages"
output: flexdashboard::flex_dashboard
---
Visualizations {data-icon="fa-signal"}
===================================== 
### Chart 1
```{r}
```
### Chart 2
```{r}
```
Tables {data-icon="fa-table"}
=====================================     
### Table 1
```{r}
```
### Table 2
```{r}
```

所得结果如图下所示:

I4I2%Y64FY2J@2~3K7[PVSY.png

:一系列等号是一级标题的另一种 Markdown 语法(也可以使用单个井号 #表示)。

从图中我们可以看到:页面标题显示在仪表盘顶部的导航菜单中。一级结构单独构成一个页面。

本例中,我们还做了一个小拓展,通过 data-icon 属性将图标应用于页面标题中。当然,你可以从该网址 https://fontawesome.com 找到其他可用的图标。


4.故事板

除了基于列或行布局外,你还可以通过故事板("storyboard")进行布局,呈现一些可视化图形或其他说明。

下面给出一个简单的例子:

---
title: "Storyboard Commentary"
output: 
  flexdashboard::flex_dashboard:
    storyboard: true
---
### A nice scatterplot here
```{r}
plot(cars, pch = 20)
grid()
```
---
Some commentary about Frame 1.
### A beautiful histogram on this board
```{r}
hist(faithful$eruptions, col = 'gray', border = 'white', main = '')
```
---
Some commentary about Frame 2.`r xfun::file_string('examples/dashboard/03-storyboard.Rmd')`

9LIDSU{JIVYF~Q58S3HYZ`J.png

如图所示,你可以通过顶部的左右导航按钮来浏览所有故事板内容。

目录
相关文章
|
7月前
|
前端开发 JavaScript NoSQL
假如你是一名专业的程序员,你将如何最快开发一个在线网站,并给出相应的代码及部署文档
假如你是一名专业的程序员,你将如何最快开发一个在线网站,并给出相应的代码及部署文档
63 0
|
关系型数据库 MySQL 数据库
MinDoc:针对IT团队的文档、笔记系统
作为一名IT从业者,无论是在公司团队中,还是在平时自己写一些笔记、博客等文档,我都习惯使用markdown来进行书写。在使用过许多支持markdown语法的系统或软件(如Typora、未知、我来、思源、觅道等)后,我总觉得它们不能满足我的需求。直到我发现了MinDoc这款针对IT团队开发的简单好用的开源文档管理系统。我们下面将介绍一下这个项目及如何使用docker-compose 快速部署。
280 1
MinDoc:针对IT团队的文档、笔记系统
|
自然语言处理 监控 数据挖掘
项目管理49个过程超详细总结(持续更新中)(一)
项目管理49个过程超详细总结(持续更新中)
817 0
|
SQL 数据挖掘 项目管理
如何用ChatGPT做项目管理?
ChatGPT可以通过创建和维护跨团队项目协作计划,让员工更容易理解他们的角色和职责。这个协作计划里面会包括每个团队或个人要执行的具体任务,每个任务最后期限和任何事情之间的依赖关系。
521 0
|
JavaScript 搜索推荐 前端开发
软件工程师文档写作最佳实践
软件工程师文档写作最佳实践
262 1
软件工程师文档写作最佳实践
|
前端开发 JavaScript 数据可视化
R文档沟通|Dashboards入门(3)
前面推了两期有关dashboards的推文,可见:R文档沟通|Dashboards入门(1);R文档沟通|Dashboards入门(2)
223 0
R文档沟通|Dashboards入门(3)
|
数据可视化
R文档沟通|Dashboards入门(1)
在本章中,我们将介绍基于 flexdashboard[1] 包的仪表盘。 仪表盘在业务风格的报告中特别常见。它们可以用来突出报告的概要和关键内容。仪表盘的布局通常是基于网格搭建的,各个组件排列在各种大小的“盒子”中。
155 0
R文档沟通|Dashboards入门(4)
Dashboards入门前三期可见:R文档沟通|Dashboards入门(1);R文档沟通|Dashboards入门(2);R文档沟通|Dashboards入门(3),今天给出该系列最后一期:在Dashboards中添加 Shiny应用。内容比较少,最后给出一些拓展资料供大家参考。
144 0
R文档沟通|Dashboards入门(4)
|
存储 前端开发 架构师
入职Apifox研发组三个月,我领悟了30个高效开发方法🔥
入职Apifox研发组三个月,我领悟了30个高效开发方法🔥