手把手教你使用 Quarto 构建文档 (1)

简介: 手把手教你使用 Quarto 构建文档 (1)

简介

Quarto[1] 是一个建立在 Pandoc 上的开源科技出版系统。

  • 可以基于 Python、R、Julia 和 Observable 创建动态内容。
  • 以纯文本 markdown 或 Jupyter 笔记本的形式编写文档。
  • 以 HTML、PDF、MS Word、ePub 等格式发布高质量的文章、报告、简报、网站、博客和书籍。
  • 用科学的 markdown 进行创作,包括方程、引文、交叉引用、图板、呼号、高级布局等等。

基于四种不同语言构建的文档,案例如下(左边为源码,右边为输出结果):



基于 Python 创建文档



基于 R 创建文档



基于 Julia 创建文档



基于 Observable 创建文档

类型与 R Markdwon 比较类似。第一部分是 YAML,后面是正文内容(包含:文字,代码等)。

小编认为如果你会了 R Markdown 制作各类文档,你再来看这些内容,难度应该都不大。两者其实非常相似。如果你有这样的担心:是否需要转战 Quarto 构建文档?,或许你可以看看谢益辉写的博客[2]

它是如何工作的?

在渲染 Quarto 文档时,首先执行所有代码块,并创建一个新的 markdown (.md) 文档,内部包括代码及其输出。然后由 pandoc 处理创建最终的格式(PDF、Word 等)。而这整个步骤都封装到了 Render 按钮中,读者只需要点击 Render 按钮即可编译得到对应的输出文档(各类文档,下一节讲给出)。



工作流程



RStudio 中的 Render 按钮

可创建的文档类型

官网给出了很多很创建的文档类型,并开源了对应的代码。读者可以尝试下载,并读懂,并将其为己所用。这里小编将其简单罗列了下:

文章和报告

具体模板可见:https://quarto.org/docs/gallery/#articles-reports



文章和报告

幻灯片

具体模板可见:https://quarto.org/docs/gallery/#presentations


幻灯片

交互式文档

具体模板可见:https://quarto.org/docs/gallery/#interactive-docs



交互式文档

网站

具体模板可见:https://quarto.org/docs/gallery/#websites



网站

书籍

具体模板可见:https://quarto.org/docs/gallery/#books



书籍

资源分享

本文主要分享基于 R 语言创建 Quarto 文档。

  1. 官网的基于 R 语言的 Quarto 文档教程[3]

825fd557ddbdbe89b3fadb7b3d4a6eae.png


  1. RStudio 举办的 R 会议等给出了一些视频教程。小编将一些最新的教程搬运到了 B 站,供大家学习:


哔哩哔哩

基于 Quarto 创建文档



小程序

  1. 其他相关的博客1[4]2[5] 等。

小编有话说

小编有打算制作一个简短的教程(或者是免费的直播),简单介绍下 Quarto 的使用方式。现在这挖个坑,准备好了再通知大家。

参考资料

[1]

Quarto: https://quarto.org/

[2]

博客: https://yihui.org/en/2022/04/quarto-r-markdown/

[3]

基于 R 语言的 Quarto 文档教程: https://quarto.org/docs/get-started/hello/rstudio.html

[4]

1: https://www.rstudio.com/blog/announcing-quarto-a-new-scientific-and-technical-publishing-system/

[5]

2: https://medium.com/appsilon-data-science/r-quarto-tutorial-how-to-create-interactive-markdown-documents-9e6c35983fe6

目录
相关文章
|
3月前
|
数据采集 前端开发 API
从零开始构建网络爬虫:ScrapeKit库详解
从零开始构建网络爬虫:ScrapeKit库详解
|
3月前
|
存储 机器学习/深度学习 人工智能
【LangChain系列】第八篇:文档问答简介及实践
【5月更文挑战第22天】本文探讨了如何使用大型语言模型(LLM)进行文档问答,通过结合LLM与外部数据源提高灵活性。 LangChain库被介绍为简化这一过程的工具,它涵盖了嵌入、向量存储和不同类型的检索问答链,如Stuff、Map-reduce、Refine和Map-rerank。文章通过示例展示了如何使用LLM从CSV文件中提取信息并以Markdown格式展示
149 2
|
3月前
|
存储 机器学习/深度学习 人工智能
【LangChain系列】第一篇:文档加载简介及实践
【5月更文挑战第14天】 LangChain提供80多种文档加载器,简化了从PDF、网站、YouTube视频和Notion等多来源加载与标准化数据的过程。这些加载器将不同格式的数据转化为标准文档对象,便于机器学习工作流程中的数据处理。文中介绍了非结构化、专有和结构化数据的加载示例,包括PDF、YouTube视频、网站和Notion数据库的加载方法。通过LangChain,用户能轻松集成和交互各类数据源,加速智能应用的开发。
257 1
|
3月前
|
测试技术 API 数据库
【LangChain系列】第二篇:文档拆分简介及实践
【5月更文挑战第15天】 本文介绍了LangChain中文档拆分的重要性及工作原理。文档拆分有助于保持语义内容的完整性,对于依赖上下文的任务尤其关键。LangChain提供了多种拆分器,如CharacterTextSplitter、RecursiveCharacterTextSplitter和TokenTextSplitter,分别适用于不同场景。MarkdownHeaderTextSplitter则能根据Markdown标题结构进行拆分,保留文档结构。通过实例展示了如何使用这些拆分器,强调了选择合适拆分器对提升下游任务性能和准确性的影响。
321 0
|
3月前
|
存储 JavaScript API
《VitePress 简易速速上手小册》第7章 高级功能与动态内容(2024 最新版)(上)
《VitePress 简易速速上手小册》第7章 高级功能与动态内容(2024 最新版)
158 2
|
3月前
|
存储 缓存 自然语言处理
《VitePress 简易速速上手小册》第7章 高级功能与动态内容(2024 最新版)(下)
《VitePress 简易速速上手小册》第7章 高级功能与动态内容(2024 最新版)
96 1
|
3月前
|
小程序
uniapp项目实践第一章:如何创建uniapp项目
uniapp项目实践第一章:如何创建uniapp项目
50 1
|
3月前
|
数据可视化
手把手教你使用 Quarto 构建文档 (2)
手把手教你使用 Quarto 构建文档 (2)
183 0
|
10月前
|
C++
[笔记]c++基础实践《四》chrono库使用
[笔记]c++基础实践《四》chrono库使用
|
中间件 C#
MasaFramework入门第二篇,安装MasaFramework了解各个模板
MasaFramework入门第二篇,安装MasaFramework了解各个模板
193 0
MasaFramework入门第二篇,安装MasaFramework了解各个模板