Capítulo 12 Referência cruzada

Por referência cruzadas entendemos a possibilidade de referir-nos a imagens e seções de nosso documento no corpo de nosso texto, sem termos que nos preocupar com seus respectivos números, facilitando muito a edição e a manutenção de nossos textos. Isso pelo fato de ambos serem sempre atualizados segundo a ordem das figuras/seções a cada renderização.

12.1 De gráfico (plot)

Vimos em como inserir um gráfico (plot) em nosso documento, lembra?

\```{r}
plot(c(1,2,3), c(3,2,1))
\```

E vimos como iserir leganda a ele:

\```{r, fig.cap="Gráfico de dispersão entre variável x e y.""}
plot(c(1,2,3), c(3,2,1))
\```

Mas como usá-lo em referencia cruzada?

Para criar referência cruzada com os gráficos criados através do R, precisaremos criar uma label. A label, assim como no caso dos trechos de código ( ) deverão se um dientificador único e exclusivo para cada gráfico. Mas a label usada, não é a mesma que a do code-chunk. Por isso precisamos inserir dentro da string da configuração da legenda (fig.cap) o comando \\label{LabelDoGrafico} onde o texto dentro de chaves serão a label do gráfico.

Por agora só criamos a label do gráfico. Para fazer a referência à esse gráfico em nosso texto, usaremos o comando \ref{LabelDoGrafico} onde quisermos referir-nos à figura.

Exemplo:

\```{r s, fig.cap = "\\label{fig:plotTest}Gráfico de dispersão entre as variáveis x e y."}
plot(c(1,2,3,4), c(1,2,3,4))
\```

Aqui farei referência à \ref{fig:plotTest} onde vemos o gráfico de dispersão entre as variáveis x e y.

Resultado:

\label{fig:plotTest}Gráfico de dispersão entre as variáveis x e y.

Figure 12.1: Gráfico de dispersão entre as variáveis x e y.

Aqui farei referência à figura onde vemos o gráfico de dispersão entre as variáveis x e y.

12.2 De imagem

Vimos na seção como inserir uma imagem. Lembra?

![](./caminho/para/imagem.png)

Vimos ainda que podemos inserir uma legenda a essa figura. Lembra?

![legenda da imagem vai aqui](./caminho/para/imagem.png)

Pois bem, se queremos fazer uma referencia a essa imagem usando a ferramenta de referência cruzada, basta, entre os colchetes, inserir uma label a essa mesma imagem: (\label{LabelDessaImagem} ). Assim como as labels dos trechos de código (conforme mencionado na seção ), elas deverão ser como um ID e não poderão se repetir em diferentes imagens:

![legenda da imagem vai aqui \label{LabelDessaImagem}](./caminho/para/imagem.png)

O que fizemos até agora foi criar uma label para a imagem que queremos referenciar em alguma parte do texto. Agora, para fazer a referencia a essa imagem, basta usar \autoref{LabelDessaImagem}.

Exemplo:

![O mistério da restauração foi desvendado por esta imagem. \label{SolucaoRestauracao}](./img/RestorationAnswers.jpg)
veja a \autoref{LabelDessaImagem} ela é muito legal a responde todas as questões científicas sobre a restauração!

Resultado:

O mistério da restauração foi desvendado por esta imagem.

O mistério da restauração foi desvendado por esta imagem.

veja a ela é muito legal a responde todas as questões científicas sobre a restauração!

12.3 De seção

Quando quisermos fazer referencia a alguma seção (Título, subtítulo, …), precisaremos criar uma label nessa seção, usando o comando {#labelsecao}, para depois referenciá-la no texto usando \ref{labelsecao}.
Repare que, para criar a seção, devemos inserir # antes do texto da label. E no comando \ref{} a label vai sem o #. Outra observação importante, não use espaço nas labels!

Exemplo:

Ver a seção \ref{InserindoImagem} para saber mais informações

Resultado:

Ver a seção para saber mais informações

12.4 De tabela

Assim como nos casos anteriores, precisaremos adicionar uma label à nossa tabela. Faremos isso adicionarndo \\label{labelDaTabela} dentro da tring do título. Estamos usando \ duas vezes para que a mesma não seja confundida com o título. Fique atento pois essa é uma fonte de erro bem comum.

Exemplo:

\```{r}
knitr::kable(mtcars[1:3,1:3], align='c', caption="Analise dos carros. \\label{tabelamtcars} ")
\```

Resultado:

Table 12.1: Analise dos carros.
mpg cyl disp
Mazda RX4 21.0 6 160
Mazda RX4 Wag 21.0 6 160
Datsun 710 22.8 4 108

E, como você já deve imagina, para fazer referencia à tablea, basta usar \autoref{labelDaTable}

Exemplo:

Na \autoref{tabelamtcars} apresentamos todos os dados usados.

Resultado:

Na apresentamos todos os dados usados.