Click the Original, Code and Reconstruction tabs to read about the issues and how they were fixed.
Objective
Objective: Understand how customers utilize Business Intelligence (BI) tools for different functions. It used a stacked bar chart to present the results collected from Gartner’s customer surveys (“Gartner Evaluates Leading Vendors for Analysis & Business Intelligence”, n.d.).
Target audience: Major BI vendors – to evaluate customer satisfaction.
The visualisation chosen had the following three main issues:
(i) Difficult to compare the percentages that make up each segment (apart from first segment) as they are not aligned on a common baseline - despite a stacked bar chart making it easier to compare the sum of all categories.
(ii) Poor selection of colours – a diverging color scheme should not be used to represent categorical data.
(iii) Difficult to understand without labels, especially with similarly sized segments and become visually complex as many categories are added.
Reference
The following code was used to fix the issues identified in the original.
library(dplyr)
library(ggplot2)
df<-read.csv(("stackbardata.csv"),header = TRUE,sep = ",",check.names = FALSE)
head(df)
## Vendor Data Pctg
## 1 Actuate Static management reports 41
## 2 Actuate Personalized dashboards 8
## 3 Actuate Parameterized reports 43
## 4 Actuate Simple ad hoc analysis 19
## 5 Actuate Moderately complex ad hoc analysis 12
## 6 Actuate Complex ad hoc analysis 8
df$Vendor<-df$Vendor%>%factor(levels = c('Tibco','Targit','Tableau','SAS','SAP','Qliktech','Panorama','Oracle','MicroStrategy','Microsoft','LogiXML','Jaspersoft','Information Builders','Infor','IDS Scheer','IBM','Board','ArcPlan','Actuate'),
labels = c('Tibco','Targit','Tableau','SAS','SAP','Qliktech','Panorama','Oracle','MicroStrategy','Microsoft','LogiXML','Jaspersoft','Information Builders','Infor','IDS Scheer','IBM','Board','ArcPlan','Actuate'),
ordered = FALSE)
p1<-ggplot(df,aes(x=Vendor,y=Pctg,fill=Data))+
geom_bar(stat="identity")+
scale_fill_manual(values = c("#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#fddaec","#e5d8bd","#dbf0f0"))+
facet_wrap(~Data,ncol = 4,nrow = 2)+
labs(x=NULL, y="Percentage of Users",title="How BI Customers Use Their Platforms",
caption = "Source: Surveys of Vendors' Customers Showcased in Gartner's Reports")+
geom_text( aes( label = paste0( Pctg, "%" ), y = Pctg ),
position = position_dodge(width = 1), hjust = 0.5,size = 3, color = "black")+
theme(legend.position="none",
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank(),
plot.background = element_rect(fill = "#ffffff"),
axis.ticks = element_blank(),
axis.text.x = element_blank(),
strip.background = element_blank(),
strip.text.x = element_text(face = "bold"),
plot.caption = element_text(color = "#696969"))+
coord_flip()
Data Reference
The following plot fixes the main issues in the original.