Quarto 仪表盘使得使用 Python、R、Julia 和 Observable 创建交互式仪表盘变得容易:
将一组相关的数据可视化发布为仪表盘。使用各种组件,包括 Plotly、Leaflet、Jupyter Widgets、htmlwidgets;静态图形(Matplotlib、Seaborn、ggplot2 等);表格数据;值框;和文本注释。
灵活且易于指定的基于行和列的布局。组件智能地调整大小以填充浏览器,并适应移动设备的显示。
使用任何笔记本编辑器(JupyterLab 等)或使用任何文本编辑器(VS Code、RStudio、Neovim 等)在纯文本 Markdown 中进行创作。
仪表盘可以作为静态网页部署(无需特殊服务器),或者您可以选择集成一个后端 Shiny Server 以增强交互性。
这个简单的单页 Python 仪表盘使用交互式 Plotly 可视化来探索 Gapminder 数据集中的发展指标。仪表盘包含两行,第二行包含两列:
仪表盘由几个组件组成:导航栏 — 图标、标题和作者,以及链接到子页面(如果定义了多个页面)。
页面、行、列和选项卡集 — 页面、行和列使用 Markdown 标题定义(可选属性以控制高度、宽度等)。选项卡集可用于进一步划分行或列中的内容。
卡片、侧边栏和工具栏 — 卡片是包含图表、数据显示和自由格式内容的容器。卡片的内容通常映射到笔记本或源文档中的单元格。侧边栏和工具栏用于在交互式仪表盘内呈现输入。
仪表盘可以使用 Jupyter 笔记本(.ipynb
)或使用纯文本 Markdown(.qmd
)创建。以下是上述示例的笔记本版本的代码(点击图片查看放大视图):
以下是仪表盘的纯文本 .qmd
版本(点击最右侧的数字查看语法和机制的额外解释):
python # <3> #| title: GDP与预期寿命 px.scatter( df, x="gdpPercap", y="lifeExp", animation_frame="year", animation_group="country", size="pop", color="continent", hover_name="country", facet_col="continent", log_x=True, size_max=45, range_x=[100,100000], range_y=[25,90] )
# <3>
python # <4> #| title: 人口 px.area( df, x="year", y="pop", color="continent", line_group="country" )
#| title: 预期寿命
px.line(
df, x="year", y="lifeExp",
color="continent", line_group="country"
)
```
1. 文档选项定义了导航栏的`title`和`author`,并指定了使用`dashboard`格式。
2. 使用标题定义行和列。在此示例中,我们定义了两行,并使用`height`选项指定它们的相对大小。
3. 计算单元成为存在于行或列中的卡片。卡片可以有一个可选的标题(此处我们使用`title`选项指定)。
4. 第二行包含两个计算单元,它们自动被分割成并排的两个卡片。
## 入门指南
### 第一步:安装Quarto
仪表盘是Quarto v1.4中的一个功能。在开始之前,请确保您安装了**最新发布**版本的Quarto。
::: {#download-button .download-button}
<div>
[\_](_ "下载 Quarto"){#download-url .btn .btn-action .btn-action-primary}
[在下面的表格中找到您的操作系统]{#download-text .hidden .download-text}
</div>
:::
::: {#download-table .download-table}
:::
### 亮点 {#download-section-highlights}
Quarto 1.5 包含了以下新功能:
- [Typst CSS](/docs/output-formats/typst.qmd#typst-css)——格式化带有边框和颜色的表格,格式将从HTML转换到Typst。
- [Typst 0.11.0](/docs/authoring/tables.qmd#features-available-only-in-html-tables)——Typst表格与其他格式具有功能对等性,支持列跨度、行跨度和单个单元格的对齐。
- [网站草稿模式](/docs/websites/website-drafts.qmd)——改进了涉及草稿帖子和页面的工作流程支持:
- 为`website`键添加了`drafts`选项,提供新的草稿指定方式:直接在`_quarto.yml`中,以及通过元数据包含和配置文件。
- 为`website`键引入了`draft-mode`选项,以控制草稿的渲染方式。草稿可以是`gone`、`unlinked`或`visible`。
- 为渲染的草稿页面添加了草稿横幅。
- 改进了草稿文档的链接行为。现在,除了从搜索结果、列表和站点地图中排除外,当`draft-mode`为`gone`或`unlinked`时,草稿不会出现在导航中,也不会从文本超链接中链接。
- 更改了`quarto preview`对草稿的行为。草稿在预览中将始终`visible`,无论`draft-mode`设置如何。特别是,这提供了一种更简单的方式来预览草稿内容在导航和列表中的外观。
- [网站公告栏](/docs/websites/website-tools.qmd#announcement-bar)——为您的网站添加公告栏。
- [占位图短代码](/docs/authoring/placeholder.qmd)——轻松为您的文档添加占位图(`{{< placeholder >}}`)。
- [Lorem Ipsum 文本短代码](/docs/authoring/lipsum.qmd)——轻松为您的文档添加Lorem Ipsum文本(`{{< lipsum >}}`)。
- [原生Julia引擎](/docs/computations/julia.qmd#using-the-julia-engine)——无需Jupyter即可在Quarto文档中执行Julia代码。
- [项目预渲染脚本](/docs/projects/scripts.qmd#pre-and-post-render)——在执行任何预渲染脚本后,项目元数据和渲染列表现在会重新计算。
- [全局禁用HTML表格处理](/docs/authoring/tables.qmd#library-authors)——在HTML RawBlock的任何位置声明注释`<!--| quarto-html-table-processing: none -->`。
- [短代码上下文感知](/docs/extensions/shortcodes.qmd#context-awareness)——短代码处理程序可以感知其在`block`、`inline`或`text`上下文中的调用。
::: {#download-section-news}
### 发行说明 {#download-release-notes}
::: {#download-news .download-news}
:::
:::
```{=html}
<style type="text/css">
#download-table {
display: none;
}
</style>
您可以在下载页面找到所有平台的发行说明和安装程序。