Design contest: TidyTuesdays

Due by 06:00 PM on Monday, October 28, 2019

For this contest, you will find someone else’s submitted #TidyTuesday submission, critique it, then offer suggestions on ways to improve and enhance their work.


  1. Become familar with TidyTuesday and the R Online Learning Community

  2. Learn through someone else’s submission on novel visualization techniques, how to provide code in open source (e.g., how people post code on GitHub, etc.), and how to provide constructive design feedback on existing designs.

  3. Improve and enhance others’ work by developing a task/scenario around the visualization and modifying the visualization for that task/scenario.


Choose any dataset from the #tidytuesday GitHub repository.

These datasets are part of a weekly RStudio crowd-sourced project.

Check out some of these projects using these datasets:


1. Research and choose a TidyTuesday submission:

Go onto Twitter and search #tidytuesday and find one (1) posting relating to your dataset that includes the code they used.This is critical. You will need to replicate and build off their submission. Therefore, if you cannot find their code and/or have any issues replicating their results, then select a different submission.

2. Critique:

Critique the design of that TidyTuesday submission.

-What are good design aspects?

-What are ways to improve this visualization?

-What are questions do you have with their code (e.g., packages, techniques, functions)?

Think back to readings (e.g., Wilke, Healy books) on good viz principles. Stronger results will be justified by some of our past readings (e.g., “one positive of the submission included Ogabe-Ito color scheme to be aware of color blindness as cited in Wilke Ch. 19”).

3. Design a scenario/task

Design a scenario/task using a visual analytics tools using flexdashboard, ggplot2, gganimate, htmlwidgets and/or shiny.

Think about the following questions in your design process:

-What are the tasks?

-What can/must be done using data analysis?

-What needs to be done interactively?

-How to best support the user in conducting the tasks?

-What needs to be visualized and how to best visualize it?

You goal is a dashboard on your scenario/task.

For implementation, you should must use at least flexdashboard (recommended) but you can use shiny instead (or together), but shiny is optional.

If you can’t figure out how to implement certain recommendations (e.g., certain types of interactions), then it’s okay to make notes. For this project, the goal is on design rather than implementation (though you’ll get a higher grade the more you can implement).

For example, take a screen shot image of your flexdashboard and then (using powerpoint shapes/tool boxes) overlay changes you would like to modify if you had a broader set of tools (e.g., full knowledge of shiny, etc.).


Prepare a 7-8 minutes presentation to introduce your dataset, tidytuesday selection, design critique, and your suggested dashboard/improved version.


  1. Title page: Teammates names, Dataset, Date
  2. Dataset & TidyTuesday Selection: Provide an overview of your dataset by showing the user’s TidyTuesday selction you choose. Be sure to provide a link/credit to whomever created this post.
  3. Critiques: What are good design choices? What are ways to improve the selected TidyTuesday entry?
  4. Modified Selection: Provide a screen shot or demo of your modified version of the TidyTuesday submission. What did you modify? What is the value add of your additional enhancements (e.g., what do your enhancements enable?)

You can then provide either screenshots or your dashboard live. Likely not enough time for demo but you can try.

The presentations will be given on October 28 in class.

For your presentation, you will need to create slides for your presentation. You may use PowerPoint, Keynote, or try an R-based presentation tool (e.g., ioslides, slidy, or xaringan). I would strongly recommend xaringan. (See this RStudio Cloud project to play with xaringan) You will need to email me these slides.


You will be graded on the following criteria:

Higher grades will include using a broader range of packages and adding in interactive or animated tools (e.g., enable shiny, gganimate, htmlwidgets like plotly) when appropriate. But don’t feel obligated to use shiny or any tools we hadn’t covered up to this point. My intention is to get you to think about ideally what you’d like to do; but not have all the skills yet to accomplish your goal (this is what the final project is for).

However, please note, don’t just add interaction to add more complexity. You will need to justify why interaction or animation was necessary if you use these items.

Extra Credit: - Up to 20% for full reproducibility (e.g., GitHub repo or gist, public RStudio.Cloud link, and #tidytuesday Twitter post.). Please provide these as links in your final project slide or in the canvas notes. If you make a Twitter post, please tag whomever you cited and give them thanks for their submission! (Also, be sure to use #dsba5122 too 😉).


For this project, you can use/be inspired by others work, but whenever you use anything closely resembling someone else’s work, CITE YOUR SOURCE!!

At minimum, you should provide the original individual’s full name and an active link to the place you found their work (e.g., Tweet, website/blog page, whatever). Any team found not citing will lose points and (depending on how much used) could face disclipinary actions. Therefore, when in doubt, err on the side of citing to avoid any possible complications.