If you were to divide the population of the UK into these two groups…
intro <- tibble(category = c("a", "b"), height = c(1,1), name = c("White", "Black, Asian, Mixed or other Ethnic group (BAME)"))

ggplot(intro) +
  geom_bar(aes(category, height, fill = name), stat = "identity", width = 0.5) +
  scale_fill_manual(values = c("dark blue", "light blue")) +
  geom_text(aes(x = category, y = height, group = category, label = str_wrap(name, 15), colour = name),
            position = position_stack(vjust = 0.5), family = "Source Sans Pro", fontface = "bold", size = 4) +
  scale_colour_manual(values = c("white", "black")) +
  theme_minimal() +
  theme(text= element_text(family = "Source Sans Pro"),
        plot.margin=grid::unit(c(0,0,0,0), "mm"),
        aspect.ratio = 0.22,
        legend.position = "none",
        panel.grid = element_blank(),
        axis.title = element_blank(),
        axis.text = element_blank())

…it would look like this:
ggplot(filter(intro_data, Measure == "UK"), 
                aes(x = "1", y = Value, fill = Ethnicity_binary)) + 
  geom_bar(stat='identity', width = 0.75) +
  coord_flip() +
  scale_y_continuous(limits = c(0, 100)) +
  geom_hline(yintercept = 86.4, linetype = "dotted", size = 1.5) +
    
  # Colour scheme
  scale_fill_manual(values = c("dark blue", "light blue")) + 
  
  # Customise theme
  theme_minimal() +
  theme(text= element_text(family = "Source Sans Pro"),
        plot.margin=grid::unit(c(0,0,0,0), "mm"),
        panel.grid = element_blank(),
        axis.title = element_blank(),
        axis.text = element_blank(),
        legend.position = "none",
        plot.caption = element_text(size = 8, vjust = -5, colour = "dark grey")) +
  
  # Create dynamic % labels on each bar
    geom_text(aes(group = Value, label = label, colour = Ethnicity_binary), 
            position = position_stack(vjust = 0.5), 
            family = "Source Sans Pro", fontface = "bold", size = 4.5) +
    scale_colour_manual(values = c("white", "black")) +
  
  labs(caption = "Year: 2011. Region: UK. Source: Office for National Statistics.")

In a racially equal society, this proportion wouldn’t change dramatically if we looked at the population of prisoners, undergraduates or homeowners.
But do we live in a racially equal society?
Let’s take a look.
# Plot
p <- ggplot(data) +
  
  ## Add the stacked bar  
  geom_bar_interactive(aes(x = as.factor(id), y = Value, fill = Ethnicity_binary, 
                           tooltip = paste(label, " ", Ethnicity_binary)), 
                       stat = "identity", width = 0.3) +
  scale_fill_manual(values = c("dark blue", "light blue")) +
  geom_hline(yintercept = 86.4, linetype = "dotted", size = 1) +
  
  theme_minimal() +
  theme(text= element_text(family = "Source Sans Pro"),
        panel.grid = element_blank(),
        axis.title = element_blank(),
        axis.text = element_blank(),
        legend.position = "none",
        plot.margin = unit(c(0,0,0,0), "mm")) +
        
  coord_polar() +
  
  geom_text(data = label_data, 
            aes(x = id, y = (tot/tot)*105, label = str_wrap(Measure, 15), hjust = hjust),
            angle = label_data$angle,
            colour = "black", size = 1.75, family = "Source Sans Pro", fontface = "bold", inherit.aes = FALSE) +
  
  ## Change y limits to allow space for base line information
  ylim(-100,max(label_data$tot + 5, na.rm=T)) +  
  
  ## Add base line information
  geom_segment(data = base_data, 
               aes(x = start, y = -5, xend = end, yend = -5), 
               colour = "dark grey", size = 1, lineend = "round", inherit.aes = FALSE) +
    
  geom_text(data = base_data, 
            aes(x = title, y = -20, label = str_wrap(category, 1)),
            angle = c(-15, -50, 90, 45, 0, -60, -290, -335),
            
            colour = "dark grey", size = 2, family = "Source Sans Pro", fontface = "bold", inherit.aes = FALSE)
  
girafe(code = print(p))
Lords Ministers MPs Civil servants NHS medical staff Social workers Court judges Police Prison officers Arrested Imprisoned Stopped and searched 3 As at A Level Excluded from school GCSE English and Maths (grade 5+) Teachers Undergrad students BBC leadership BBC staff FTSE 100 execs National newspaper editors Premier League managers Unemployed Deprived neighbourhoods Homeless Homeowners Cover girls People in adverts TV actors Power Public sector Law Punishment Education Work Housing Visibility
Notes
1. I acknowledge that, while useful, the crude categories of ‘white’ and ‘BAME’ can hide more than they reveal. Firstly, ‘BAME’ is not a coherent, united identity - being ‘black’ in Britain is not the same as being ‘Asian’. Secondly, categorising the population on the basis of race alone ignores how other factors - such as gender, class and where you live - will define an individual’s experience of social (and racial) inequality. Despite these limitations, I believe the categories of ‘white’ and ‘BAME’ remain useful for at least giving us some indication of whether a white/non-white racial inequality exists in a particular area of life.
2. All datasets have been calculated to exclude ‘unknown’ or unrecorded ethnicities. A summary of the proportion of ‘unknown’ ethnicities in each dataset can be seen on this table.
3. Some of datsets are for the whole of the UK, while others are for just England, England and Wales, or England, Wales and Northern Ireland. The overall white/BAME proportion stays almost exactly the same for all. Given the relatively small populations of Northern Ireland, Scotland and Wales compared to England, the exclusion of these areas should not dramatically change the proprtions shown. Please see sources below for information on the exact area that each dataset covers.
Sources