Objective
The objective of the chart above was to inform the viewer of the job titles that have the 10 highest salary packages at Google. Therefore, it could be said tat the intended audience may be job seekers searching for information about salaries or positions they might like to obtain within the industry.
The visualisation chosen had the following three main issues:
Reference
The following code was used to fix the issues identified in the original.
library(ggplot2)
library(dplyr)
google <- read.csv("GoogleData.csv", stringsAsFactors = TRUE)
google <- google %>% transform(Position= reorder(Position,Salary))
googleMeansData <- google %>% group_by(Position) %>% summarise(SalaryMean= mean(Salary))
googleMeansData <- googleMeansData %>% transform(Position= reorder(Position,desc(SalaryMean)))
p1 <- ggplot(data = googleMeansData, mapping = aes(x = googleMeansData$Position, y=googleMeansData$SalaryMean))
p1 <- p1 + geom_bar(stat="identity", fill = "#e85d54") +
labs(title = "Top 10 Salaries at Google",
subtitle = "Calculated as averages using data from GlassDoor",
y = "Salary in USD (000's)",
x = "",
caption = "Source: JobVine.za.co via GlassDoor. (2011).") + theme_minimal() +
theme(text = element_text(color = "#7e827f"),
axis.text.x=element_text(size=10, color = "#000000"),
plot.subtitle = element_text(hjust=0, size= 10),
plot.title = element_text(size = 20, hjust=0, vjust = 1),
axis.title.x = element_text(),
axis.title.y = element_text(vjust = -1),
plot.caption = element_text(hjust= .5, size = 7, vjust = -1.5),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank()) + coord_flip() +
geom_text(aes(label=round(googleMeansData$SalaryMean,0), hjust=-.1), size = 3)
Data Reference
The following plot fixes the main issues posed by the original.