|
### Earnings Dumbbell Chart |
|
|
|
library(ggplot2) |
|
library(tidyr) |
|
library(dplyr) |
|
library(scales) |
|
|
|
schoolearnings <- read.csv("schoolearnings.csv", stringsAsFactors=FALSE) |
|
|
|
df <- schoolearnings %>% gather(gender,value,2:3) |
|
men <- df %>% filter(gender=="Men") %>% arrange(desc(value)) %>% .$School |
|
df$School <- factor(df$School, levels=rev(men)) |
|
schoolearnings$School <- factor(schoolearnings$School, levels=rev(men)) |
|
|
|
|
|
## Nice dotchart |
|
ggplot() + |
|
geom_segment(data=schoolearnings, aes(x=Women, xend=Men, y=School, yend=School), color="gray77",lwd=1)+ |
|
geom_point(data=df, aes(value, School, group=gender,color=gender), size=5) + |
|
scale_color_manual(values=c("thistle4", "tomato4"))+ |
|
scale_x_continuous(breaks = seq(60,160,20), labels=c("$60k", "$80k","$100k","$120k","$140k","$160k")) + |
|
ggtitle("Gender earnings disparity - 10 years after enrollment") + |
|
xlab("") + ylab("") + |
|
theme( |
|
plot.title = element_text(hjust=0,vjust=1, size=rel(2.3)), |
|
panel.background = element_blank(), |
|
panel.grid.major.y = element_blank(), |
|
panel.grid.major.x = element_line(color="gray70",linetype = c("28")), |
|
panel.grid.minor.x = element_blank(), |
|
panel.grid.minor.y = element_blank(), |
|
plot.background = element_blank(), |
|
text = element_text(color="gray20", size=10), |
|
axis.text = element_text(size=rel(1.0)), |
|
axis.text.x = element_text(color="gray20",size=rel(1.8)), |
|
axis.text.y = element_text(color="gray20", size=rel(1.6)), |
|
axis.title.x = element_text(size=rel(1.5), vjust=0), |
|
axis.title.y = element_text(size=rel(1.5), vjust=1), |
|
axis.ticks.y = element_blank(), |
|
axis.ticks.x = element_blank(), |
|
legend.position = "none" |
|
) |
This comment has been minimized.