date: "`r Sys.Date()`"
16 Quarto avançat
16.1 Introducció
En aquest apartat s’expliquen algunes de les funcionalitats avançades de Quarto. Els elements essencials ja els hem vist en els anteriors apartats, així que llegir aquesta secció és opcional i només recomanada per qui tingui interès a descobrir algunes funcionalitats addicionals. També podreu trobar informació addicional als següents enllaços:
16.2 Més YAML
En el YAML podem precisar i personalitzar com es visualitzarà l’Html de Quarto. Per exemple:
- Podem posar la data automàticament:
- Podem posar una foto al costat del títol:
title: "{width=2in}"
- Podem canviar el tema visual del document i l’estil dels subratllats^[Per a una llista dels diferents estils de temes i subratllats vegeu aquest enllaç.
theme: paper
highlight: tango
- Podem definir com es reproduiran per defecte alguns elements de l’Html, com les taules i gràfics.
fig-width: 6
fig-height: 4
- Podem incrustar totes les imatges de l’Html en el propi document, de manera que l’arxiu Html es pugui obrir des d’altres ordinadors sense necessitat d’arxius complementaris. Per això, haurem d’introduir el comandament
embed-resources: true
al YAML d’aquesta manera.
16.3 Opcions globals
És recomanable tenir un primer chunk amb el nom setup
o similar on anotem algunes configuracions bàsiques del nostre Quarto. És molt útil utilitzar el següent codi per marcar les opcions per defecte de tots els chunks del document. A continuació indiquem que s’amagui el codi, els missatges i avisos de tots els chunks.
knitr::opts_chunk$set(echo = FALSE, message = FALSE,
warning = FALSE)
El primer chunk també pot ser útil per carregar els paquets i objectes que necessitarem durant el document.
16.4 Referències al text
Per referenciar una secció del document, el més adequat és posar el codi de la referència just després del títol de secció. Aquest codi el posarem entre claus i encaplaçat del coixinet. Per exemple:
# Introducció{#intro}
Llavors, en qualsevol moment del text podrem referenciar la secció d’una manera molt similar a la manera com referenciem les pàgines web: [text](#intro)
. El text al qual faci referència el posarem entre claudàtors seguit dels parèntesis, que inclouran el codi de la secció amb un coixinet davant.
En aquest enllaç, també podeu veure com es poden referenciar taules i marcs de dades.
16.5 Posar bibliografia
La manera més senzilla de posar la bibliografia a Quarto és a través d’un document BibTex (.bib). La majoria de gestors de cites bibliogràfiques, com Mendeley o Zotero, utilitzen aquest tipus de format per emmagatzemar-les. A Quarto explicarem com utilitzar-los de manera que ens generi automàticament una llista de les fonts citades al final del document. Els passos que haurem de fer per crear una bibliografia són els següents:
-
A RStudio obrim un document de text (Text file) i el guardem com a
biblio.bib
en el directori de treball, on també tenim guardat l’arxiu de Quarto amb què estem treballant. A dins del document hi guardarem el text que veiem a la dreta, que són les referències que hauríem d’utilitzar per referenciar la base de dades NMC que hem treballat al tutorial.Per saber-ne més sobre l’estil de citació BibTex, podeu consultar RMarkdown Cookbook, Reproducible Research in R o Wikibooks: LaTeX/Bibliography Management.
@book{Singer1972,
address = {New York},
author = {Singer, J. David and Small, Melvin},
publisher = {Wiley},
title = {{The wages of war, 1816-1965: a statistical handbook}},
year = {1972}
}
@article{Singer1987,
author = {Singer, J. David},
journal = {International Interactions},
pages = {115--132},
title = {{Reconstructing the Correlates of War Dataset on Material Capabilities of States, 1816-1985}},
volume = {14},
year = {1987}
}
- En el YAML, introduirem una nova línia on explicarem on es troba el document que conté la bibliografia:
bibliography: biblio.bib
- Introduirem la cita en qualsevol lloc del text:
- Si l’envoltem de claudàtors
[@Singer1987]
ens posarà nom i any entre parèntesi: (Singer, 1987). - Si no utilitzem els claudàtors
@Singer1987
ens posarà només l’any entre parèntesi: Singer (1987).
- En l’última línia del document de Quarto, posarem un títol
# Referències
per separar la bibliografia de la resta del text.
Alguns paquets d’R com RefManageR
automatitzen la gestió de cites.
16.6 Canviar el format del text
Quarto ha millorat significativament la possibilitat de canviar el format del text en relació amb les versions de RMarkdown, tot i que encara resulta laboriós fer grans canvis. El més aconsellable és introduir al YAML les opcions següents per modificar la mida o la font del text principal:
: 18px
fontsize: Arial mainfont
Altres opcions de format de text es poden trobar aquí.
16.7 Taules
Una altra de les assignatures pendents de Quarto són les taules. Imaginem-nos com creem una taula en Word: anem a “Crear taula” i simplement ens demanarà el nombre de files i columnes de la taula. En Quarto és força més embolicat. Vegem un exemple. Aquest és el codi que haurem d’utilitzar per crear una taula.
| Funció | Paquet | Descripció |
|--------------|-----------|--------------------------------------------|
| `filter()` | `dplyr` | Filtra les observacions del marc de dades |
| `separate()` | `tidyr` | Separa els elements d'un vector |
| `read_csv()` | `readr` | Llegeix els arxius CSV |
| `ggplot()` | `ggplot2` | Reprodueix elements gràfics |
El resultat d’aquest codi és el de la taula 16.1 següent:
Funció | Paquet | Descripció |
---|---|---|
filter() |
dplyr |
Filtra les observacions del marc de dades |
separate() |
tidyr |
Separa els elements d’un vector |
read_csv() |
readr |
Llegeix els arxius CSV |
ggplot() |
ggplot2 |
Reprodueix elements gràfics |
Hi ha algunes opcions, més senzilles, per crear taules. La primera és construir-les a partir d’un marc de dades o una matriu de dades. La segona és utilitzar l’Editor Visual (vegeu següent apartat).
16.8 Editor visual
L’Editor Visual va sortir en una de les actualitzacions de 2020 per donar resposta a usuaris que necessitaven una interfície més semblant a Word per generar documents. Per utilitzar l’Editor Visual, heu de clicar a la rodeta del document de Quarto i seleccionar la primera opció:
Amb l’editor visual veurem una interfície que ens serà molt més familiar. No obstant això, recomanem utilitzar-lo només puntualment.
16.9 Publicar a internet
Publicar un document generat amb Quarto a internet és molt ràpid. La forma més directa és mitjançant RPubs, encara que també es poden fer pàgines web més sofisticades, blocs o llibres.
- RPubs: RPubs és la manera més ràpida de publicar a la xarxa. A dins d’RStudio, un cop l’Html s’hagi generat en el Viewer, cliqueu a l’icona blava del Viewer (Publish -> Publish a Document), seleccioneu RPubs i seguiu les instruccions.
- Quarto Publish: Quarto també permet crear crear llibres, blocs, presentacions i pàgines web. Tota la informació es pot trobar a la secció Publishing, a dins de la web de Quarto.