Original


Source:https://www.instagram.com/p/B2jUDPLDpZZ


Objective

The target audience of the visualisation is the viewership base of CNBC, which is comprised of casual viewers as well as professional investors.

The objective of the original data visualisation is to display the upward trend of global esports audience growth in recent years. It also shows the forecasted audience growth for 2022.

The three main issues observed in the visualisation were as follows -

  1. The graph is deceptive since the plotted numbers are all over the visualization.

  2. Inappropriate choice of visualisation(stacked bar chart) for the type of data.

  3. Axis is not included and the background image is distracting along with the choice of color.

Reference

Code

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

rm(list = ls())
library(ggplot2)

# create a dataset
Year <- c(rep("2017" , 2) , rep("2018" , 2) , rep("2019" , 2),rep("2022" , 2))
Viewers <- rep(c(  "Occasional Viewers", "Esports Enthusiast" ), 8)
Number <- c(143, 192, 173, 222, 201, 253, 297, 347)

data <- data.frame(Year, Viewers, Number)

v1 <- ggplot(data, aes(fill=Viewers, y=Number, x=Year)) + 
  geom_bar(position="dodge", stat="identity") + ggtitle("Global Esports Audience Growth") +
  theme(
    plot.title = element_text(color="black", size=14, face="bold"),
    axis.title.x = element_text(color="black", size=14, face="bold"),
    axis.title.y = element_text(color="black", size=14, face="bold")
  ) + labs(fill = "Viewers", y = "Number of people in millions", x="Year") +
  scale_fill_manual(values =c('#b2df8a', '#1f78b4')) +geom_text(aes(label= Number),position=position_dodge(width=0.9),vjust=-1, hjust= .25, size=4) + ylim(0,400)

Data Reference

Reconstruction

The following plot fixes the main issues in the original.