仪表板输入布局

概述

在交互式仪表板中有几种方式来布局输入:

  • 侧边栏 提供一个可折叠的垂直面板用于输入。

  • 工具栏 提供一个水平面板用于输入。

  • 卡片输入 提供一个用于卡片特定输入的面板。

这些技术都创建了带有特殊背景颜色的输入区域,以区别于普通内容。你也可以将输入放置在仪表板中的任何其他你希望的地方(即在一个标准的卡片中)。

工具栏

工具栏类似于侧边栏,但提供水平布局。通过将 .toolbar 类添加到一个二级行标题来创建工具栏。例如:

---
title: "工具栏"
format: dashboard
server: shiny
---
    
## {.toolbar}
    
```{python}
```

## 行

```{python}
```

全局工具栏

如果你有一个包含多页的仪表板,你可能希望工具栏是全局的(即在所有页面中可见)。要做到这一点,请将 .toolbar 类添加到一个一级标题中:

---
title: "工具栏"
format: dashboard
server: shiny
---
    
# {.toolbar}

工具栏内容

# 页面 1 

```{python}
```

# 页面 2

```{python}
```

内联工具栏

虽然工具栏通常布局在页面级别(即从左到右贯穿仪表板),但实际上你可以在布局中的任何地方包含它们。例如,这里我们有一个位于列内的工具栏(而不是跨越所有列):

---
title: "Palmer Penguins"
format: 
  dashboard:
    orientation: columns
server: shiny
---

## 列 

### {.toolbar}

```{python}
```

### 行

```{python}
```

## 列

```{python}
```

工具栏可以位于内容的顶部或底部。通过将其包含在与其相邻的行之后,可以在底部布局工具栏。例如:

---
title: "Penguin Bills"
format: dashboard
server: shiny
---

## Row

```{python}

```{python}

```

![](/docs/dashboards/images/toolbar-bottom.png){.border}

## 卡片输入 {#card-inputs}

在某些情况下,您可能希望更直接地将输入连接到单个输出。您可以通过使用卡片工具栏或卡片侧边栏来实现这一点。

### 卡片工具栏

要向卡片添加工具栏,请在生成输出的单元格的上方或下方定义它。您可以通过在单元格中添加 `content: card-toolbar` 选项或创建一个具有 `.card-toolbar` 类的 div 来实现这一点。例如:

``` {.python .pymd}
```{python}
#| content: card-toolbar
```{python}
#| title: Penguin Bills

```

![](/docs/dashboards/images/card-toolbar.png){.border fig-alt="一张 Penguin Bills 卡片的截图。卡片工具栏包含两个下拉菜单,一个用于变量,一个用于分布,还有一个显示地毯标记的复选框。下方,显示了一个按物种着色的 bill_length_mm 直方图。"}

请注意,带有工具栏的单元格的 `title` 属性是可选的(如果没有 `title`,则输入将左对齐而不是右对齐)。

### 卡片侧边栏

要向卡片添加侧边栏,请在生成输出的单元格的左侧或右侧定义它。您可以通过在单元格中添加 `content: card-sidebar` 选项或创建一个具有 `.card-sidebars` 类的 div 来实现这一点。例如:

``` {.python .pymd}
```{python}
#| content: card-sidebar
```{python}
#| title: Penguin Bills

```

```

一张 Penguin Bills 卡片的截图。左侧的卡片侧边栏包含两个下拉菜单,一个用于变量,一个用于分布,还有一个显示地毯标记的复选框。右侧显示了一个按物种着色的 bill_length_mm 直方图。