hexlogo
2 files changed
tree: 4b42f2b2f8e6e0b165213d4c41eece605d5c7be5
  1. .Rproj.user/
  2. inst/
  3. man/
  4. R/
  5. .gitattributes
  6. .Rbuildignore
  7. .RData
  8. .Rhistory
  9. .travis.yml
  10. code_pic.png
  11. DESCRIPTION
  12. example_poster.png
  13. LICENSE
  14. NAMESPACE
  15. posterdown.Rproj
  16. posterdown_hexlogo.png
  17. posterdown_picture.png
  18. README.md
  19. skeleton.pdf
README.md

posterdown

As a graduate sudent, I found that it is almost a right of passage to take early research and analysis and generate a conference poster allowing for critical feedback as well as meeting the people in your feild. I have also noticed that many of my fellow graduate students use R and are also getting their feet wet with RMarkdown :blush:; however, we always had to go back to using MS Powerpoint or Keynote for generating conference posters :unamused:. Posterdown was created as a proof of concept (to myself) that it is possible to make a beautiful poster using open source reproducible code.

From this:

To this:

Please feel free to give me feedback or requests for changes in the issues page. I am currently finishing up my masters so I will have limitted time to work on updating this package in the next few months but nevertheless I will do what I can! :smile:

Installation

You can install and use posterdown from github using the devtools package as seen below.


devtools::install_github("brentthorne/posterdown")

Overview

The posterdown package provides a familiar workflow for those used to working in RMarkdown. See the skeleton.Rmd that is produced posterdown document for how to go from typical RMarkdown formatting to this: posterdown PDF Poster

This package is currently focused on a single template called posterdown_pdf which is by default a 38in (H) x 45in (W) poster template which allows for custom section headers and content.

Using posterdown from RStudio

To use posterdown from RStudio:

  1. Install the latest RStudio.

  2. Install the posterdown package:

    devtools::install_github("brentthorne/posterdown")
    
  3. Use the New R Markdown dialog to create a conference poster from the templates

    New R Markdown

Customization

Posterdown uses Latex to generate the PDF poster but more specifically it uses the Memoir Latex class. Memoir was chosen for its flexability in page sizing as well as thorough documentation. I am fairly new to the world of Latex and found this class to have a reasonable amount of customization available. If there are any users who think there may be better options for down the road I am more than willing to listen!

YAML OPTIONS

YAML header options have been created to privide more freedom with design (ie colours, number of columns, and sizing) to fit a wide variety of requirments. Here are the default YAML options found in the skeleton.Rmd file:

OptionDescription
titlePoster title, acts as you would expect from RMarkdown.
authorList of authors which (as of now) only has true support for a single author, however I have provided a hacky way to have many authors until I can find the time to figure out how to impliment something like the rticles packages does
affiliationAuthor affiliations, which just as the author section is currently a hacky version of what I would ultimately like to produce.
font_sizeRepresents the value for \normaltextsize in latex. All other font sizes are adjusted around this, for example, the title in the skeleton document is given the Latex command \Huge, meaning that the title text will be "huge" relative to the font_size chosen. Here is a usefull resource for better understanding the Latex text sizing options.
font_familySelects the font family to be used on the poster, in the future I will try to mipiment multiple font families for various components of the poster (such as different fonts for the title versus the main body text). For now only standard Latex fonts are availble, see here for a list of possible options.
title_bgcolThe background colour for the title section of the poster (currently using hex values to define this colour)
poster_bgcolBackground colour of the posters main body section.
title_textcolColour of the main title text.
header_textcolColour of the Section Header Text
cite_colColour of the citation link elements when using biblatex.
url_colColour of URL links specifically
link_colColour of in document links (example would be referencing a Figure or a Table)
columnline_colColour of the line which divides each column in the poster
poster_heightHeight of the final poster output. Units can be: "in", "mm", "cm"
poster_widthWidth of the final poster output. Units can be: "in", "mm", "cm"
column_numbersNumber of columns you wish for the poster to have in the main section of the poster.
bibliographyName of the .bib. file which you are using to source material. As of right now only biblatex is working but I intend to add support of natbib which is my preference.
outputFor generating posterdown_pdf, in the future other poster designs or templates may be made for this package and thus this option in the YAML will be more flexible. For now this is the only option.

Markdown Customization

As you add content to your RMarkdown file you will notice the output pdf will fill in columns from left to right as well as top to bottom. If you have more content to fit than what is available on the default poster try altering the number of columns as well as the font size to make it work.

Using posterdown outside of RStudio

  1. Install pandoc using the instructions for your platform.

  2. Install the rmarkdown and posterdown packages:

    devtools::install_github("brentthorne/posterdown")
    
  3. Use the rmarkdown::draft() function to create articles:

    rmarkdown::draft("MyPoster.Rmd", template = "posterdown_pdf", package = "posterdown")
    

TODO

  • [x] Support for changing the size of the poster
  • [ ] Support for Natbib
  • [ ] Support for logo placement in the title bar section of poster
  • [ ] Gradient colour options
  • [ ] True YAML multi author/ affiliation support
  • [ ] Toggle citation section on/off as per user's choice
  • [ ] Make colour options standardized (probably hex colours if possible)
  • [ ] Fill/style Section headings if user whishes