Chunks have options
Without applying any options, quarto will simply include both the code and output into the rendered document. This will include messages, error messages, warnings etc. Let’s take a look at what that might mean:
Warning: package 'ggplot2' was built under R version 4.4.2
── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
✔ dplyr 1.1.4 ✔ readr 2.1.5
✔ forcats 1.0.0 ✔ stringr 1.5.1
✔ ggplot2 3.5.1 ✔ tibble 3.2.1
✔ lubridate 1.9.3 ✔ tidyr 1.3.1
✔ purrr 1.0.2
── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
✖ dplyr::filter() masks stats::filter()
✖ dplyr::lag() masks stats::lag()
ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
Applying options?
We can stipulate how it is that quarto should deal with any given chunk in a number of ways:
Note that there is a fourth way to include yaml chunk options: If you create a Quarto Project (instead of just a document) then there will be a _quarto.yml file that contains yaml for all documents created in that project.
There are three main ways to include chunk options (in this example we’d be telling quarto not to include the code in the rendered document).
Chunk header

Chunk yaml

Document yaml

If you set a chunk option in the document yaml then the option will apply to all chunks (unless specified differently in a specific chunk).
Quarto Chunk Options
Here are the most commonly used chunk options that you can insert either into the beginning of a chunk or into the yaml at the beginning of your document if you want them to apply to all chunks:
What’s next
In the next lesson we’ll learn about how hyperlink and reference figures and tables in your document as well as execute in-line code to insert data points directly into the text of your document.