Click the Original, Code and Reconstruction tabs to read about the issues and how they were fixed.
Objective
Targetted Audience
The above visualisation has three main issues and are as follows:
Mapping of area and size as quantity :
The technique of mapping a numeric quantity to the area of the circle leads to misconception or incorrect understanding. Here, the market capitalization of each company is visualized as the size of the circular area. By doing so, it makes it difficult to compare the value of market capitalization between the companies. Also, there is no scale of the size of the circular area in contrast to market capitalization value.
Ignoring conventions:
This is one of the most secretive tactics to mislead or deceive people. This is achieved by violating one or more standard practices. In the above visualization, there is no dedicated X-axis which makes it harder to gain insights. The Y-axis does not has standard scaling and also it is designed upside-down, with minimum value at the top and the maximum value at the bottom. Thus, breaching a convention that the nature of Y-axis values increase from the origin(0,0) towards the top.
Use of 3D graphical elements:
The use of 3D objects is to simply decorate and adorn the plot. This is a gratuitous representation technique that often leads to misinterpretation of data when used inappropriately. The 3D discs do not convey any information on the numerical value of the company’s market capitalization. Also, 3D objects overlap on one another which leads to extra efforts to decode the visualization.
Reference
The following code was used to fix the issues identified in the original.
library(ggplot2)
library(readr)
library(RColorBrewer)
library(magrittr)
library(dplyr)
MarketCap <- read_csv("MarketCapData.csv")
MarketCap <- MarketCap %>% mutate(Year = factor(Year, levels = c("1637","1720","1911","2007","2019"),
labels = c ("1637","1720","1911","2007","2019")))
p <- ggplot(data=MarketCap, aes(x=reorder(Company, ValueToday),y=ValueToday, fill= Year))
p <- p + geom_bar(stat = "identity", color = "white")+
scale_fill_manual(values = c("#827397","#85a392","skyblue3","#fcbf1e","#d2c6b2")
)+
labs(title = "The World's Biggest Companies in History",
subtitle = "The Most Valuable Companies by Market Capitalization",
x = "Company Names",
y = "Market Capitalization in Billions USD",
fill = "Year"
)+
theme( panel.background = element_rect(fill = "white"),
panel.grid.major = element_line(size = 0.1,
linetype = 'solid',
colour = "black"),
panel.grid.minor = element_line(size = 0.05,
linetype = 'solid',
colour = "black")
)+
theme(plot.title = element_text(size = 12),
plot.subtitle = element_text(size = 10, face = "italic"),
axis.text=element_text(size=8, face = "bold"),
axis.title=element_text(size=10,face="bold")
)+
theme(legend.justification = "top",
legend.box.background = element_rect(),
legend.box.margin = margin(1,1,1,1),
legend.title = element_text(face = "bold")
)+
coord_flip()
Data Reference
The following plot fixes the main issues in the original.