Goal: I want to write academic style blog posts with: citations, cross-reference of tables and figures, and I want to manage figure path by myself. The default setting of blogdown can handle citations and cross-references pretty well thanks to Yihui’s awesome work on
blogdown packages, but the figures are nested too deep. I just want to put all figures under
After a bit of digging, I managed to do this. The main trick is to add a
knitr setup chunk to the Rmd file, and then parse it with
blogdown::render_page(), based on Yihui’s set up. If a post does not have any figures, it will pass the first step and go directly with
blogdown::render_page(). I did not look through all functions available from the
blogdown package. But I am sure there must be a better way to do this. Anyway, I get what I want at this moment.
For citations, put the bibtex file in the same folder as the post, and then add
bibliography: ref.bib in the yaml. You can even define the citation styles via
csl: url_of_csl_file in the yaml.1 Thousands of csl files are available at Github CSL repository. Go and find one you like and paste the url in the yaml.
Testing paragraph: Invasion of non-native species, one of the most widespread and harmful consequences of global change, is causing worldwide ecosystem degradation and economic loss (Vilà et al., 2011; Simberloff et al., 2013).
Here is inline equations \(a^2 + b^2 = c^2\); and display equations:
R code chunk
## speed dist ## Min. : 4.0 Min. : 2 ## 1st Qu.:12.0 1st Qu.: 26 ## Median :15.0 Median : 36 ## Mean :15.4 Mean : 43 ## 3rd Qu.:19.0 3rd Qu.: 56 ## Max. :25.0 Max. :120
Including plots and cross-refer it back
You can also embed plots and cross-refer it with
\@ref(fig:figure-label), for example Figure 1:
Table and cross-reference
You can also print tables and cross-refer it with
\@ref(tab:table-label), for example Table 1:
knitr::kable(head(pressure), caption = "Table legend.")
Any suggestions to improve this workflow? Comment below or send me a pull request. Thanks.
Simberloff, D., Martin, J.-L., Genovesi, P., Maris, V., Wardle, D.A., Aronson, J., Courchamp, F., Galil, B., García-Berthou, E., Pascal, M. & others (2013) Impacts of biological invasions: What’s what and the way forward. Trends in ecology & evolution, 28, 58–66.
Vilà, M., Espinar, J.L., Hejda, M., Hulme, P.E., Jarošík, V., Maron, J.L., Pergl, J., Schaffner, U., Sun, Y. & Pyšek, P. (2011) Ecological impacts of invasive alien plants: A meta-analysis of their effects on species, communities and ecosystems. Ecology letters, 14, 702–708.
A local file in the same folder will work too.↩