Click the Original, Code and Reconstruction tabs to read about the issues and how they were fixed.

Original


Source: PartsGeek.com “How Much 19 Major Car Brands Make Every Second” (2020).


Objective

The objective of the original data visualisation is to show the gross revenue of popular car brands and which companies generate the most revenue. The target audience is the average customer interested in cars. Gross Revenue per Second is used to make large numbers more manageable to the average person.

The visualisation chosen had the following three main issues:

  • Deception - Visual Bombardment - Although the visualisation is beautiful, there is a lot of images. For those unfamiliar with the company logos, they have to look up the color of the bar and then compare it to the legend. The bar graph and circular areas also refer to the same value

  • Deception - Area and Size as Quantity - Circular areas makes it difficult to understand the scale of difference between the Gross Per Revenue. The circular axis also makes it difficult to compare values on the barplot.

  • Data Integrity - While sources of data is included, it is not clear where the values are coming from. The data is not reproducible based on the sources given.

Reference

Code

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

library(dplyr)
library(ggplot2)
library(ggpubr)
library(tidyr)

cars <- readr::read_csv("cars.csv")

cars<-cars %>% 
  rename(
     GrossPerSecond = `Gross Revenue per second` ,
     GrossRevenue =`Gross Revenue` 
  )
cars$Name<-as.character(cars$GrossRevenue/1000000000)
cars$right<-") "
cars$B<-"B"
cars$left<-" ("
cars = cars %>% unite(Carbrands, Automaker,left,Name,B,right,sep="",remove = FALSE)

img<-ggplot(data = cars, aes(x=reorder(Carbrands,GrossPerSecond), y=GrossPerSecond))+
geom_bar(stat="identity") +
geom_text(aes(label=GrossPerSecond), hjust=1.05, color="white",position = position_dodge(0.9), size=3.5)+
coord_flip()+
labs(title = "Gross Revenue per Second in USD of 19 Major Car Brands in 2019", 
       x="Car Brands (Total Annual Revenue)",
       y="Gross Revenue Per Second (31,536,000 Seconds Per Year)")+
theme_bw()+
theme(
    plot.caption = element_text(hjust=0)
  )+
labs(caption = "Source: 
Volkswagen Group.(2020)
Toyota Motor Corportaion (2020) 
Ford Motor Company(2020) 
Honda Motor Co., Ltd. (2020) 
General Motors (2020) 
Fiat Chrysler Automobiles (2020) 
BMW Group (2020)
Daimler(2020) 
Nissan Motor Corporation (202)
Hyundai Motor Company and its Subsidiaries (2020)
Groupe PSA (2020)
Groupe Renault (2020)
Kia Motors (2020)
Volvo Group (2020)
Tata Motors (2020)
Suzuki Motor Corporation (2020)
Mazda Motor Corporation (2020)
Subaru Corporation (2020)
Tesla Inc. (2020)")

Data Reference

Reconstruction

The following plot fixes the main issues in the original.