#import libraries library(tidyverse) library(readr) #get data enter your data file link rem_data <- read_csv( HERE ) #rename performance ratings old_levels <- levels(factor(rem_data$`Performance Rating`)) new_levels <- c('AME','NME','OP','SP','NR') rem_data$rating <- factor(rem_data$`Performance Rating`, old_levels, new_levels) #re-order groups by employee count groups_by_count <- rem_data %>% count(`Group Name`) %>% arrange(desc(n)) rem_data$`Group Name` <- factor(rem_data$`Group Name`, levels=groups_by_count$`Group Name`) #create the plot, but first filter away any people with 0 or >10k increarse and unrated ones rem_data %>% filter(`Salary Increase $` >0 & `Salary Increase $`<=10000, rating!="NR") %>% ggplot() + geom_point(aes(x=rating, y=`Salary Increase $`, color=rating), position="jitter") + scale_x_discrete(limits = c("NME","AME","SP","OP")) + facet_wrap(~`Group Name`, nrow=1)