| --- |
| #-YAML FRONTMATTER-# |
| |
| #ESSENTIALS |
| title: 'Using \color{Red} `posterdown` \color{White} to generate reproducible conference posters via RMarkdown > Knitr > Markdown > Pandoc > Latex > PDF workflow as well as long titles...' |
| author: "Brent Thorne^1^ Will Jones^2^" |
| department: "^1^Department of Earth Science, Brock University; ^2^Deparment of Another Institution, Institution University" |
| |
| #COLOURS |
| font_size: "30pt" # choose from the folowing options) |
| title_bgcol: "000000" #Hex colour for background of poster title section (default is blue) |
| poster_bgcol: "000000" #colour of the poster main background |
| header_textcol: "red" #colour of the poster header titles |
| |
| |
| #FORMATTING |
| poster_height: "38in" # height in inches of poster |
| poster_width: "45in" # width in inches of poster |
| column_numbers: 3 # Number of columns that the poster has |
| |
| #OTHER |
| bibliography: MyLibrary # name of the .bib file used for referencing |
| output: posterdown::posterdown_memoir |
| --- |
| |
| ```{r, include=FALSE} |
| knitr::opts_chunk$set(echo = FALSE, results = 'asis',fig.height = 3.5, fig.width = 4.5, out.width = "100%", warning = FALSE, fig.align = 'center', message = FALSE, dev='cairo_pdf') |
| ``` |
| |
| # Introduction |
| |
| Welcome to `posterdown` ! This is my attempt to provide a semi-smooth workflow for those who wish to take their `RMarkdown` skills to the conference world. Many creature comforts from `RMarkdown` are available in this package such as `Markdown` section notation, figure captioning, and even citations like this one [@holden_identifying_2012] The rest of this example poster will show how you can insert typical conference poster features into your own document. |
| |
| # Study Site |
| |
| Here is a map made to show the study site using `ggplot2`, `ggspatial`, and `sf`. Lorem ipsum dolor sit amet, [@middleton_geological_nodate] consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Phasellus vestibulum lorem sed risus ultricies tristique nulla. Mauris vitae ultricies leo integer malesuada nunc vel risus commodo. Suspendisse potenti nullam ac tortor vitae. Enim nunc faucibus a pellentesque sit amet porttitor eget. \vspace{15mm} |
| |
| ```{r, fig.width=4.5, out.width="80%", fig.cap='This is a map of Canada, the ggspatial package is great for GIS folks in R!', cache=TRUE} |
| library(ggplot2) |
| library(ggspatial) |
| library(ggthemes) |
| library(sf) |
| |
| canada <- read_sf("data/Canada.geojson") |
| |
| |
| ggplot() + |
| ggspatial::layer_spatial(canada, fill = "grey") + |
| ggspatial::annotation_north_arrow(location = "br", which_north = "true", style = north_arrow_nautical()) + |
| coord_sf() + |
| theme_solarized() + |
| NULL |
| |
| ``` |
| |
| |
| # Objectives |
| |
| \large |
| |
| 1. Easy to use reproducible poster design. |
| 2. Integration with `RMarkdown`. |
| 3. Easy transition from `posterdown` to `thesisdown` or `rticles` |
| |
| \small |
| |
| # Methods |
| |
| This package uses the same workflow approach as the `RMarkdown` you know and love. Basically it goes from RMarkdown > Knitr > Markdown > Pandoc > Latex > PDF |
| |
| # Results |
| |
| Usually you want to have a nice table displaying some important results that you have calcualated. In posterdown this is as easy as using the `kable` table formatting you are probably use to as per typical `RMarkdown` formatting. I suggesting checking out the `kableExtra` package and its in depth documentation on customizing these tables found [here](https://haozhu233.github.io/kableExtra/awesome_table_in_pdf.pdf). |
| |
| ```{r} |
| library(kableExtra) |
| library(ggplot2) |
| |
| data("iris") |
| |
| kable(iris[1:4,],align = "c", caption = "Tables are a breeze with Kable and Kable extra package!", booktabs = TRUE) %>% |
| kable_styling(latex_options = "striped",full_width = TRUE, font_size = 25) |
| |
| ``` |
| |
| \vspace{1in} |
| |
| ```{r, out.width='75%', fig.width=4, fig.height=3, fig.cap='A typical plot using ggplot using the classic iris dataset.'} |
| |
| library(ggplot2) |
| library(ggthemes) |
| |
| ggplot(data = iris, aes(x = Sepal.Length, y = Sepal.Width, colour = Species)) + |
| geom_point() + |
| theme_fivethirtyeight() + |
| labs(x = "Sepal Length", y = "Sepeal Width") + |
| NULL |
| |
| ``` |
| |
| \vspace{1in} |
| |
| ```{r, out.width='85%', fig.width=4.5, fig.height=4, fig.cap='Another typical plot using ggplot, this time with a different theme and r code chunk options for fig.width and fig.height.'} |
| |
| library(ggplot2) |
| library(ggthemes) |
| |
| ggplot(data = iris, aes(x = Sepal.Length, y = Sepal.Width, colour = Species)) + |
| geom_point() + |
| theme_hc() + |
| labs(x = "Sepal Length", y = "Sepeal Width") + |
| NULL |
| |
| ``` |
| |
| \vspace{1in} |
| |
| ```{r, out.width='80%', fig.width=4.5, fig.align='center', echo=TRUE, fig.height=5, fig.cap='Another figure showing how base R plots might look on this poster!'} |
| |
| # Here is some code for people |
| # to look at and be in awe of!!!! |
| library(ggplot2) |
| library(ggthemes) |
| |
| ggplot(data=iris, |
| aes(x = Sepal.Width, |
| y = Sepal.Length, |
| colour = Species)) + |
| geom_point() + |
| theme_stata() + |
| NULL |
| |
| ``` |
| |
| |
| # Next Steps |
| |
| There is still **A LOT** of work to do on this package which include (but are note limited to): |
| |
| - Better softcoding for front end user options in YAML such as `posterwidth: 45in`. |
| - Images in the title section for logo placement which is a common attribut to posters as far as I have come to know. |
| - Figure out compatiability with `natbib` which wasn't working during the initial set up. |
| - MUCH BETTER PACKAGE DOCUMENTATION. For example, there is nothing in the README... |
| - Include References section only if initiated by the user like in RMarkdown. |
| |
| \small |