#options(xtable.comment = FALSE) knitr::opts_chunk$set(echo = F, message = F, comment = F, warning = F, fig.height = 5, fig.width = 9) options(OutDec = ',') #options(knitr.table.format = 'markdown')
library(tidyverse) if (!knitr:::is_html_output()){ knit_print.data.frame = function(x, ...) { res <- capture.output(x %>% xtable::xtable(...) %>% print(type = 'latex', tabular.enviroment = 'longtable', comment = F, include.rownames = F)) res %>% paste0(collapse = '\n') %>% stringr::str_replace_all(stringr::fixed("{table}[ht]"), "{table}[H]") %>% knitr::asis_output() } kable = knit_print.data.frame # theme if Latex {theme_minimal(12) + theme(text = element_text(family = "sf",colour = '#0c0c0c', face = 'plain'))} %>% theme_set() } else { kable <- knitr::kable #' Theme if html {theme_minimal(15)+ theme(text = element_text(family = "helvetica", colour = '#3a3a3a', face = 'plain'))} %>% theme_set() }
Para que o seu bookdown
funcione tanto na web quanto no pdf, você deve evitar usar marcadores que dependem do contexto.
Para fazer citações você deve usar [@Weinstein1997] ou @Weinstein1997. Isso também funciona pra pacotes [@R-base] ou @R-base. Para criar uma figura, é preferível que você use o print
padrão do knitr
. A label do gráfico será fig:label-do-chunk
. Você pode citar fazendo \@ref(fig:label-do-chunk).
qplot(1:10, 1:10) + labs(x = "Esse é o texto do x.", y = "Esse é o texto do y.")
Se você precisar importar uma imagem de fora do R, é melhor que você faça ![]()
, a despeito do que diz o Yihui.
{#fig:logo}
Se você estiver com muita vontade de seguir os ensinamentos do mestre, você pode usa o knitr::include_graphics
, mas vai precisar setar dpi = NA
.
knitr::include_graphics('imgs/logo_abj.png', dpi = NA)
Essa forma tem três vantagens:
fig.height
e o fig.width
.html
.O problema é que esse jeito não é o natural do pandoc
.
De toda forma, não é uma boa criar imagens que vieram dentro de pastas. Você terá problemas com o path
dos arquivos. Ao invés de simplesmente copiar as pastas, você precisa fazer isso manualmente.
Outro tipo de referência interessante é a referência a subseções. Você pode usar [essa sintaxe][objetivos] pra ir pra seção de objetivos. Você também pode usar \@ref(objetivos).
Por fim, pra inserir tabelas, use apenas kable
. Esse book
sabe o que fazer dependendo do output
.
mtcars %>% head(5) %>% kable(caption = "Essa é uma tabela.")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.