Click the Original, Code and Reconstruction tabs to read about the issues and how they were fixed.
EPL_Visual
Objective
The objective of the original visualisation was to relay the vast disparity of accumelated wealth between the new owners of Newcastle United FC and the rest of the owners of each individual English Premier League club. The target audience being fans and stakeholders of the EPL (English Premier League) and its associates.
The visualisation chosen had the following three main issues:
The author has not used any data labels to support their visualisation. Without the use of data labels nor data points, the audience is unable to ascertain the narrative of the story and only those familiar with the English Premier League can begin to have a very basic understanding of what the author is trying to achieve
Though the use of colour coding was to signify the club’s colours, in this instance it was not used to great effect as many clubs share similar colours and therefore made it hard to differentiate between clubs when utilising this type of graph. Each fraction of the pie chart is representative of the club’s owner’s net worth however; as is evident, the smaller the fortune, the smaller the fraction and therefore; by the time we analyse the last few fractions, it’s impossible to glean any information
Lastly, by utilising a pie chart, the author is trying to infer quantity. Pie charts are inherently misleading as the human brain struggles to accurately read the comparative area of circles, and the thin slices are hard to discern and thus leads to misinformation and misinterpretation.
I have decided to include an additional field of all the teams combined besides Newcastle to really emphasise the disparity of wealth between Newcastle and the rest of the EPL.
Reference
The following code was used to fix the issues identified in the original.
library(janitor)
library(purrr)
library(rvest)
library(tidyverse)
library(Rmpfr)
library(ggplot2)
library(scales)
options(scipen = 100)
url = "https://en.wikipedia.org/wiki/List_of_owners_of_English_football_clubs"
EPL_Owner_Net_Worth = read_html(url)
EPL_Owner_Net_Worth %>%
html_nodes(css = "table")
## {xml_nodeset (5)}
## [1] <table class="plainlinks metadata ambox mbox-small-left ambox-notice" rol ...
## [2] <table class="wikitable sortable"><tbody>\n<tr>\n<th>Club\n</th>\n<th>Own ...
## [3] <table class="wikitable sortable"><tbody>\n<tr>\n<th>Club\n</th>\n<th>Own ...
## [4] <table class="wikitable sortable"><tbody>\n<tr>\n<th>Club\n</th>\n<th>Own ...
## [5] <table class="wikitable sortable"><tbody>\n<tr>\n<th>Club\n</th>\n<th>Own ...
pop_table =
EPL_Owner_Net_Worth %>%
html_nodes(css = "table") %>%
nth(2) %>%
html_table(fill = TRUE)
colnames(pop_table) = c("Club","Owner","Owner Net Worth","Source of Wealth")
pop_table =
pop_table %>%
select(-`Source of Wealth`)
pop_table =
pop_table %>%
select(-'Owner')
pop_table$`Owner Net Worth` <- gsub("\\[.*]", "",pop_table$`Owner Net Worth`)
pop_table$Club <- gsub("(more information)", "",as.character(pop_table$Club))
pop_table$Club <- gsub("\\s*\\([^\\)]+\\)","",as.character(pop_table$Club))
pop_table$Club <- gsub("\\[.()*", "",pop_table$Club)
Team <-c("Arsenal FC","Aston Villa", "Brentford FC", "Brighton & Hove Albion","Burnley FC","Chelsea FC","Crystal Palace","Everton","Leeds United","Leicester City","Liverpool FC","Manchester City","Manchester United","Newcastle United","Norwich City", "Southampton FC","Tottenham Hotspur","Watford FC","Westham United","Wolverhampton Wanderers")
Owner_Net_Worth <- c(10700000000,12700000000,3000000,1300000000,220000000,6900000000,5900000000, 2900000000, 4000000000, 2150000000,3600000000, 22000000000, 4700000000,580000000000, 30000000, 1000000000,5400000000,120000000,5600000000,8500500000)
pop_table <-data.frame(Team,Owner_Net_Worth, stringsAsFactors = FALSE)
paste('£',formatC(pop_table$Owner_Net_Worth,big.mark = ',',format = 'f'))
## [1] "£ 10,700,000,000.0000" "£ 12,700,000,000.0000" "£ 3,000,000.0000"
## [4] "£ 1,300,000,000.0000" "£ 220,000,000.0000" "£ 6,900,000,000.0000"
## [7] "£ 5,900,000,000.0000" "£ 2,900,000,000.0000" "£ 4,000,000,000.0000"
## [10] "£ 2,150,000,000.0000" "£ 3,600,000,000.0000" "£ 22,000,000,000.0000"
## [13] "£ 4,700,000,000.0000" "£ 580,000,000,000.0000" "£ 30,000,000.0000"
## [16] "£ 1,000,000,000.0000" "£ 5,400,000,000.0000" "£ 120,000,000.0000"
## [19] "£ 5,600,000,000.0000" "£ 8,500,500,000.0000"
All_Other_Teams <- pop_table%>%slice_min(Owner_Net_Worth,n=19)
Sum_Others <- sum(All_Other_Teams$Owner_Net_Worth)
Sum_Others_Total <-c('All_Other_Teams', Sum_Others)
pop_table[nrow(pop_table)+1,] <- Sum_Others_Total
pop_table$Owner_Net_Worth <- as.numeric(as.character(pop_table$Owner_Net_Worth))
pop_table$DataLabels <- scales::label_number_si()(pop_table$Owner_Net_Worth)
ggplot(data = pop_table, mapping = aes
(x=reorder(Team, Owner_Net_Worth),Owner_Net_Worth)
)+geom_bar(stat = "identity",fill = '#003366', color = '#add8e6')+scale_y_continuous(expand = c(0,0),labels = unit_format(unit = "B", scale= 1e-9))+
labs(x="Team", y= "Owner Net Worth")+ coord_flip()+ggtitle("EPL Owners Net Worth (£)")+geom_text(aes(label = DataLabels), position = position_dodge(width = 0.5), vjust=0.4, hjust=-.2, size =3)+theme_classic()+ theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(),panel.background = element_blank(), axis.line = element_line(colour = "black"))+theme(plot.title = element_text(hjust = 0.5))
Data Reference
List of owners of English football clubs. In Wikipedia. Retrieved May 2, 2022, from https://en.wikipedia.org/wiki/List_of_owners_of_English_football_clubs
Transfermarkt, (2022, May), Overall Market Value Change in all Clubs in Premier League, https://www.transfermarkt.com/premier-league/marktwerteverein/wettbewerb/GB1
The following plot fixes the main issues in the original.