Original


Source: Reddit r/dataisbeautiful.


Objective & Targetted Audience

  • Targetted Audience: The audiences of this visualisation are Students of different bg(tech. and non-tech), Teachers or Professors and Professionals related to media or field related to data visualisation .

  • Objective: The objective of this visualisation is to understand which Countries are affected by Covid-19 the most and by how much as compared to rest of the world.

The visualisation chosen had the following three main issues:

  • Issue 1 Visual Perceptipon(Similarity, Proximity, Continuity):Multiple Flags with similar pattern like stripes , orientation have been used which sometimes appear to be part of one countries flag and creates a lot of confusion.

  • Issue 2: Colour: The visualisation is a bomabardment of bright colors as most countries have simlar color and shade and in our case completely similar color but differeent orientatioin . There are instances where 2 flag’s orientation(having similar colors and pattern) is changed and both have different proporting the same visualisation. few flags morph into one and appear to decieve the audience as there is no noticeable division between the flags.Moreover “Total Cases” and “Total Deaths” depiction appears as one as there is no distict foreground color to clarify the sepration (foreground is white and same color is used in the viusalisation making it appear part of the visualisation)

  • Issue 3: Deception(Area and size as quantity): The visualisation forces the audience to comapre the size of each block as its very difficult to know the size exactly and make comaprison clearly.It can not be determined by the size of each block the percentage(size) of that block and also a very poorly defined block presenting “Other Countries” contains the labels for all block with their percentage which in itself is poor visualisation practice.

Reference

Code

The following code was used to fix the issues identified in the original.

library(ggplot2)
library(readr)
library(tidyr) 
library(reshape2)
library(dplyr)
library(extrafont)
covid <- read_csv("covid.csv")

 mm<- melt(covid, id.vars='Country')
 mm$Country<- ordered(mm$Country, levels = c("other","Iran","Brazil","Russia","Germany","Turkey","France","UK","Italy","Spain","USA"))
 
 pal <- c("#FCB438", "#BFE027","#96C0B7","#3d5f78","#216C74","#ff97c6","#8D7894","#841C66","#A95594","#7C5006","#7A2037","#87334A")

a<-ggplot(mm, aes(x=Country, y=value,fill=Country)) + geom_bar(stat='identity') +scale_fill_manual(values = pal)+facet_grid(.~variable, scales = "free")+ coord_flip() + labs(x='',y='')

a<- a +
  labs(title = "Top 10 Countries Covid-19 Cases/Death",caption = "Source: Worldometers (www.worldometers.info/coronavirus/)")
 bg <- "#EFF1F0"
# bg<-"#E8E2E2"


a <- a+
  theme(plot.background  = element_rect(fill = bg),
        panel.background = element_rect(fill = bg),
        legend.background = element_rect(fill = bg),
        title = element_text(face = "bold"))

a <- a + ggtitle("Top 10 Countries Covid-19 cases and Deaths as of April 27 2020") +
  xlab("Country") + ylab("Number of Cases")

a <- a + theme(
  plot.title = element_text(color="black", size=11, face="bold"),
  axis.title.x = element_text(color="black", size=10, face="bold"),
  axis.title.y = element_text(color="black", size=10, face="bold"),
  plot.subtitle = element_text(color = "black", size=10, face = "italic"),
  plot.caption = element_text(color = "black", size=9, face = "italic")
)

a <- a + theme(legend.title = element_text(color = "black", size = 10),
               legend.text = element_text(color = "black"))

a <- a + theme(
  plot.title = element_text(hjust = 0.5),
  plot.subtitle = element_text(hjust = 0.5)
)

Data Reference

  • Data Source.(2020).worldometer.com.[online] Available at:www.worldometers.info/coronavirus/ [Accessed 30 Apr. 2020].

  • Baglin, J. (2020). Data Visualisation Multivariate Analysis Chapter 6. [Notes] RMIT University.

Reconstruction

The reconstructed graph fixes the issue of Similarity by using bar plot where each Bar represents 1 country and has distinct color. Using Bar plot removes the deception of size and by well labeled bars makes it is easy to compare cases of each country and deaths in each country.

This visualisation Clearly shows the Top 10 Countries Number of Cases and Corresponding number of deaths