The Second Annual UGLY GGPLOT contest

Can you harness the grammar of graphics for evil?!

Welcome to the second annual Ugly ggplot contest! This is your chance to show off your creativity and push the boundaries of data visualization by crafting the ugliest ggplot plot you can imagine.

I challenge each of you to create an intentionally ugly plot using the ggplot2 package in R. The goal is to create a visualization that is both aesthetically displeasing and difficult to interpret, while still adhering to the basic rules of plot creation (e.g., including axes, labels, and legends).

Rules:

  1. Must use a dataset from assignment 1-4 and contain any combination of columns with X and Y coordinates.

  2. Can be any kind of plot (Can you make something that is NOT a bar, box, or scatter plot?).

  3. The plot must have visible axes and a plotted area. All necessary plot parts (axes, axes labels, titles, legend if necessary) must be present and completely legible - no cut-off words or excessively overlapping labels or shapes.

  4. Must be created entirely using ggplot in R.

  5. The plot must be exported as a JPEG file and jpeg and R code (with proper heading, read.csv to the data you imported, ggplot/other libraries loaded, and all ggplot commands to replicate the plot and save as jpeg) emailed to me (lauren.olinger@uvi.edu) by 10 am October 23.

Judging and awards

We will choose the ugliest plots based on their innovative misuse of color schemes, creative but inappropriate use of geometries and annotations, imaginative application of fonts and text placements, and overall ability to concoct a visualization that is both confusing and aesthetically jarring while still maintaining basic plot integrity (i.e., including all necessary plot parts like axes, labels, and legends). The plots will be judged on their ability to adhere to the guidelines while pushing the boundaries of unconventional and “ugly” data visualization. Special attention will be given to plots that creatively blend multiple tips for crafting an ugly plot, as outlined above.

All entries that follow the rules above (limit one per student) will receive one extra credit point for MES 503. The winning entry will receive an ugly plaque and bragging rights, forever immortalizing their prowess in crafting a truly heinous data visualization.

May your plots be horrendous, your creativity boundless, and your data forever be clean and accurate in your future endeavors.

Hall of Champions

2023

Winner: Josh Soll

Honorable Mention: Abi Gretta

Tips for Crafting an Ugly Plot:

  1. Fonts:

    • Use multiple fonts in one plot.
    • Use unconventional fonts, these can be found online (e.g., comic sans, papyrus, etc.)
  2. Font Face:

    • Mix different font faces (italic, bold, regular) within text elements.

    • Use inconsistent font sizes.

  3. Text Placement:

    • Overlay text on important plot elements, making it hard to discern underlying data.

    • Place axis labels, titles, or annotations in unconventional locations.

  4. Color Choices:

    • Use clashing or poorly contrasting color schemes.

    • Employ patterns or gradients that make the data difficult to interpret.

  5. Background:

    • Modify the background color to clash with the data colors.

    • Use an image or a pattern as a plot background that distracts from the data.

  6. Data Point Customization:

    • Use icons, emojis, or images as data points.

    • Implement various shapes and sizes for data points within a single plot.

  7. Combining Plot Types:

    • Merge different plot types in a manner that does not enhance data understanding (e.g., overlaying a bar plot on a scatter plot).
  8. Axes and Scales:

    • Employ non-intuitive scaling (e.g., a reversed or logarithmic scale where inappropriate).
    • Use overly complicated or too simplistic tick marks.
  9. Legend and Labels:

    • Place the legend in a location that obscures data.
    • Use ambiguous or incorrect labeling.
  10. Annotations:

    • Add unnecessary lines, arrows, or text that do not enhance understanding.
  11. Theme:

    • Utilize a theme that does not align with the data context (e.g., a playful theme for serious data).
  12. Aspect Ratio and Dimensions:

    • Choose an aspect ratio that distorts the data or makes it challenging to interpret.
  13. Transparency:

    • Implement inappropriate levels of transparency for elements, making them hard to distinguish.
  14. Find online ggplot packages and libraries to help you:

    • get out there ! theres tons of weird and fun libraries to find. https://r-charts.com/miscellaneous/ggcats/

Example

Importing fonts may take a few minutes, depending on the number of fonts and the speed of the system.
Continue? [y/n]