Quarto Dashboards 教程 1:Overview

「写在前面」

学习一个软件最好的方法就是啃它的官方文档。本着自己学习、分享他人的态度,分享官方文档的中文教程。软件可能随时更新,建议配合官方文档一起阅读。推荐先按顺序阅读往期内容:
1.quarto 教程 1:Hello, Quarto
2.quarto 教程 2:Computations
3.quarto 教程 3:Authoring


目录

  • 1 概述
  • 2 示例
  • 3 演练
  • 4 开始

官网教程:https://quarto.org/docs/dashboards/

注:Dashboards 是 Quarto 1.4 中的新增功能。请通过下面链接下载最新版本的 Quarto。
https://quarto.org/docs/download/

1 概述

Quarto Dashboards 可以轻松使用 Python、R、Julia、Observable 创建交互式仪表盘(dashboards):

  • 将一组相关数据可视化发布为仪表盘。使用各种组件(包括 PlotlyLeafletJupyter Widgetshtmlwidgets);静态图形( MatplotlibSeabornggplot2 等);表格数据;值盒;和文字注释。
  • 灵活且易于指定基于行和列的布局。组件会被智能地调整大小以填充浏览器并适合在移动设备上显示。
  • 使用任何笔记本编辑器( JupyterLab 等)或使用任何文本编辑器( VS CodeRStudioNeovim 等)以纯文本 Markdown 进行创作。
  • 仪表盘可以部署为静态网页(不需要特殊服务器),或者您可以选择集成后端 Shiny Server 以增强交互性。

2 示例

您可以创建高度自定义的布局并使用各种仪表盘主题,如以下示例所示:

stock-explorer-dashboard.png
customer-churn-dashboard.png
penguins-dashboard.png

有关这些仪表盘的实时版本、源代码和其他示例,请参阅 examples gallery:https://quarto.org/docs/dashboards/examples/

3 演练

在这里,本文将通过一个简单的示例来说明基础知识。然后,本文将提供有关如何开始构建您自己的仪表盘的详细说明。

这个简单的单页 Python 仪表盘使用交互式 Plotly 可视化来探索 Gapminder 数据集中的发展指标。仪表盘包括两行,其中第二行包括两列:

alt

仪表盘由几个组件组成:

  1. Navigation Bar — icon、title、author、sub-pages links(如果定义了多个页面)。
  2. Pages, Rows, Columns, and Tabsets — Pages、rows、columns 使用 Markdown headings 定义(具有控制 height、width 等可选属性)。Tabsets 可用于进一步划分 row 或 column 中的内容。
  3. Cards, Sidebars, and Toolbars — Cards 是绘图、数据显示、自由形式内容的容器。Cards 的内容通常映射到 notebook 或 source document 中的 cells。Sidebars 和 Toolbars 用于在交互式仪表盘中呈现输入。

可以使用 Jupyter notebooks (.ipynb) 或使用纯文本 markdown (.qmd) 创建仪表盘。以下是上述示例的 notebook 版本的代码:

alt

下面是仪表盘的纯文本 .qmd 版本:

--- 
title: "Development Indicators by Continent"
author: "Gapminder Analytics Group"
format: dashboard
---

```{python}
import plotly.express as px
df = px.data.gapminder()
```

## Row {height=60%}

```{python}
#| title: GDP and Life Expectancy
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]
)
```

## Row {height=40%}

```{python}
#| title: Population
px.area(
df, x="year", y="pop",
color="continent", line_group="country"
)
```

```{python}
#| title: Life Expectancy
px.line(
df, x="year", y="lifeExp",
color="continent", line_group="country"
)
```

4 开始

Step 1: Install Quarto

仪表盘是 Quarto v1.4 中的一项功能。在开始之前,请确保安装最新发行版本的 Quarto。您可以在下载页面找到所有平台的发行说明和安装程序:https://quarto.org/docs/download/prerelease.html

Step 2: Learn the Basics

首先学习如何布局仪表盘并用内容填充它:

Dashboard Layout 向您展示如何控制 navigation bar,以及如何跨 pages、rows、columns、tabsets、cards 排列内容。

Data Display 向您展示如何在仪表盘中以图表、表格、值框和文本的形式显示数据。

Step 3: Explore Further

掌握基础知识后,请查看这些附加文章以了解更多信息。

Examples 提供了示例仪表盘库,您可以将其用作自己的灵感。

Inputs 演示了交互式仪表盘输入布局的各种方法(侧边栏、工具栏、将输入直接附加到卡片等)

Theming 描述了自定义仪表盘外观的字体、颜色、布局和其他方面的各种方式。

Parameters 解释了如何通过定义参数并在命令行上为其提供不同的值来创建仪表盘变体。

Deployment 涵盖如何部署静态仪表盘(仅需要 Web host,但不需要 server)和 Shiny 仪表盘(需要 Shiny Server)。

Interactivity 探索了创建交互式仪表盘的各种方法,以实现更灵活的数据探索。

这些内容将在后续教程中介绍。


「结束」

注:本文为个人学习笔记,仅供大家参考学习,不得用于任何商业目的。如有侵权,请联系作者删除。

alt

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/571742.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于python+django+mysql农业生产可视化系统

博主介绍: 大家好,本人精通Java、Python、C#、C、C编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…

Tiny11作者开源:利用微软官方镜像制作独属于你的Tiny11镜像

微软对Windows 11的最低硬件要求包括至少4GB的内存、双核处理器和64GB的SSD存储。然而,这些基本要求仅仅能保证用户启动和运行系统,而非流畅使用 为了提升体验,不少用户选择通过精简系统来减轻硬件负担,我们熟知的Tiny11便是其中…

【linux】Linux第一个小程序-进度条

1. 预备知识:回车和换行 回车(Carriage Return,CR): 在早期的机械打字机中,回车指的是将打字机的打印头移回到行首的操作,这样打印头就可以开始新的一行的打印。在ASCII编码中,回车用…

【VueUse】重新定义状态管理在 Vue 中的体验

在 Vue 生态系统中,状态管理一直是开发者们关注的焦点之一。而随着 VueUse 的出现,我们迎来了一种全新的方式来处理状态管理,它让我们能够以更简单、更灵活的方式来管理应用程序的状态。 在本文中我们将深入探讨 VueUse 中与状态管理相关的内…

第一篇【传奇开心果系列】Python深度学习库技术点案例示例:深度解读深度学习在自动驾驶领域的应用

传奇开心果博文系列 系列博文目录Python深度学习库技术点案例示例系列 博文目录前言一、深度学习在自动驾驶方面的应用介绍二、目标检测和识别示例代码三、路况感知示例代码四、行为预测示例代码五、路径规划示例代码六、自动驾驶控制示例代码七、感知融合示例代码八、高精度地…

基于Springboot的点餐平台

基于SpringbootVue的点餐平台的设计与实现 开发语言:Java数据库:MySQL技术:SpringbootMybatis工具:IDEA、Maven、Navicat 系统展示 用户登录 首页展示 菜品信息 菜品资讯 购物车 后台登录 用户管理 菜品分类管理 菜品信息管理 …

npm、yarn与pnpm详解

🔥 npm、yarn与pnpm详解 🔖 一、npm 🔍 简介: npm是随Node.js一起安装的官方包管理工具,它为开发者搭建了一个庞大的资源库,允许他们在这个平台上搜索、安装和管理项目所必需的各种代码库或模块。 &#…

【网页在线小游戏源码】

网页在线小游戏源码 效果图部分源码领取源码下期更新预报 效果图 部分源码 index.html <!DOCTYPE html> <html> <head> <meta http-equiv"Content-Type" content"text/html; charsetUTF-8"> <meta id"viewport" na…

零代码编程:下载的PDF文件自动批量重命名

从arxiv或者一些其他网站下载的PDF文件&#xff0c;标题只是创建时间&#xff0c;看不出里面内容是什么&#xff0c;要一个个打开看非常麻烦。 可以在GPT4中输入提示词&#xff1a; 你是一个Python编程专家&#xff0c;要完成一个编写关于重命名PDF文件的Python脚本的任务&…

Llama-7b-Chinese本地推理

Llama-7b-Chinese 本地推理 基础环境信息&#xff08;wsl2安装Ubuntu22.04 miniconda&#xff09; 使用miniconda搭建环境 (base) :~$ conda create --name Llama-7b-Chinese python3.10 Channels:- defaults Platform: linux-64 Collecting package metadata (repodata.js…

机器学习和深度学习-- 李宏毅(笔记与个人理解)Day22

Day 22 Transformer seqence to seqence 有什么用呢&#xff1f; Encoder how Block work 仔细讲讲Residual 的过程&#xff1f; 重构 Decoder - AutoRegressive Mask 由于是文字接龙&#xff0c;所以无法考虑右边的 info 另一种decoder Encoder to Decoder – Cross Attend…

❤mac使用Idea工具

❤mac使用Idea工具 1、安装 直接跳过&#xff0c;文章有 &#xff08;点击跳转&#xff09; 给自己的mac系统上安装java环境 2、使用 快捷键 Command , 系统首选项 设置Idea连接数据库 打开右侧的database&#xff08;或菜单里&#xff09;连接数据库&#xff0c;根据提…

opencv绘制线段------c++

绘制线段 bool opencvTool::drawLines(std::string image_p, std::vector<cv::Point> points) {cv::Mat ima cv::imread(image_p.c_str()); // 读取图像&#xff0c;替换为你的图片路径 cv::Scalar red cv::Scalar(0, 0, 255); // Red color int thickness 2;// 遍…

Vue3 超前版发布,全面拥抱 JSX/TSX

拥抱 JSX/TSX? 我们都知道 Vue 一直主流是使用 template 模板来进行页面的编写。而就在最近,Vue3 的超前项目 Vue Macros 中,发布了 defineRender、setupComponent、setupSFC 这些新的 API,这代表了,以后 Vue3 有可能可以全面拥抱 JSX/TSX 了!! 说这个新 API 之前,我…

2024江苏省考申论新说刷题系统班

2024江苏省考申论新说刷题系统班&#xff0c;针对江苏省考特色&#xff0c;精准指导考生刷题备考。课程系统全面&#xff0c;深入剖析申论题型&#xff0c;提供实战演练机会。通过科学刷题&#xff0c;考生能迅速提升申论能力&#xff0c;为江苏省考成功上岸打下坚实基础。 下…

LangChain的核心模块和实战

主要模型 LLM:对话模型, 输入和输出都是文本Chat Model: 输入输出都是数据结构 模型IO设计 Format: 将提示词模版格式化Predict: langchain就是通过predict的方式调用不同的模型, 两个模型的区别不大, Chat Model 是以LLM为基础的.Parese: langchain还可以对结果进行干预, 得…

Python检测网页文本内容屏幕上的坐标

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Python 检测网页文本内容屏幕上的坐标 在 Web 开发中&#xff0c;经常需要对网页上的文本内…

STM32标准库ADC和DMA知识点总结

目录 前言 一、ADC模数转换器 &#xff08;1&#xff09;AD单通道 &#xff08;2&#xff09;AD多通道 二、DMA原理和应用 &#xff08;1&#xff09;DMA数据转运&#xff08;内存到内存&#xff09; &#xff08;2&#xff09;DMAAD多同道&#xff08;外设到内存&#x…

pnpm install报错 Value of “this“ must be of type URLSearchParams

执行pnpm install的时候就报错Value of “this” must be of type URLSearchParams 由于之前执行没有出现过这个问题&#xff0c;最近在使用vue3所以使用了高版本的node&#xff0c;怀疑是node版本的问题。 解决&#xff1a; 检查node版本 node -v当前使用的是20.11.0的 修改…

银行业ESB架构:构建安全高效的金融信息交换平台

在金融行业&#xff0c;信息交换是银行业务运作的核心。为了实现不同系统之间的数据交互和业务流程的协同&#xff0c;银行通常采用企业服务总线&#xff08;ESB&#xff09;架构。本文将探讨银行业ESB架构的设计理念、关键技术以及实践经验&#xff0c;帮助银行构建安全高效的…