r语言 - 如何使用GGPlot将两个条形图合并为一个



我正在尝试使用GGPLOT将两个不同的条形图组合成一个。单独的代码是'

ggplot(data=by_div_salaries, aes(x=women_salary, y=salaries.ClassificationName)) + 
geom_bar(stat="identity") +labs(title = "Women Head Coach Salaries")
ggplot(data=by_div_salaries, aes(x=men_salary, y=salaries.ClassificationName)) + 
geom_bar(stat="identity") +labs(title = "Men Head Coach Salaries")

,我试图通过为每个ClassificationName设置两个条来获得男性工资和女性工资。

我试过了:

ggplot(data=by_div_salaries, aes()) + 
geom_bar(mapping = aes(x=women_salary, y=salaries.ClassificationName), position=position_nudge(x = 0.2), width=0.2,stat = "identity",color="green" ) +
geom_bar(mapping = aes(x=men_salary, y=salaries.ClassificationName), position=position_nudge(x = -0.2), width=.2, stat = "identity", color = "blue") + 
scale_y_continuous(name = "Division") +
xlab("Salary")

但是我得到这个错误:Error: Discrete value supplied to continuous scale


I want the two grpahs next to each other.

这听起来像是在这种情况下,重塑的("长")数据可能更容易处理。

library(tidyverse)
by_div_salaries %>%
pivot_longer(c(women_salary, men_salary)) %>%
ggplot(aes(x=value, y=salaries.ClassificationName, fill = name)) + 
geom_col() 

最新更新