With color code.
countries <- c("Germany","the UK","France","Other European Nations")
factor_countries <- factor(countries, levels=countries)
df <- data.frame(share=c(0.2,0.2,0.09,0.51),
country=factor_countries)
colors <- c("Germany"="#002147",
"the UK"="darkred",
"France"="#233F7D",
"Other European Nations"="#818181")
ggplot(data = df) +
geom_bar(aes(x=0, y=share, fill=forcats::fct_rev(country)), stat="identity", width=0.01) +
scale_fill_manual(values = colors)+
geom_text(aes(x=0.01, y=cumsum(share)-share/2, label=country), size=5) +
geom_text(aes(x=0, y=cumsum(share)-share/2, label=scales::percent(share)), size=5, color="white") +
coord_flip(xlim = c(-0.05,0.05), ylim=c(0,1))+
theme_void() + theme(legend.position = "none")