首页 > 解决方案 > 带有 2 个轴的 BarPlot 上的 R 叠加线图

问题描述

我有以下代码,它只产生一个没有线条的条形图。如何调整此代码以获取辅助线? 在此处输入图像描述

library(ggplot2)
p1 <- ggplot()
p1 <- p1 + geom_bar(data=subset(df, Year==2006), aes(x=factor(State),y=Rate), stat = "identity")
p1 <- p1 + xlab("State") + ylab("Rate") + theme(axis.text.x = element_text(angle = 60, hjust = 1)) 
p1 <- p1 +  geom_line(data = subset(df, Year==2006),  aes(x=factor(State),y=Total.Poverty/1000),colour = "blue") 
p1 <- p1 + scale_y_continuous(sec.axis = sec_axis(~.*1000, name = "Total Poverty"))
print(p1)

我已经查看了条形图和线图的 ggplot2 叠加层,但我仍然无法弄清楚为什么该图没有显示线。

在此处输入图像描述

标签: r

解决方案


你应该提供一个最小的数据集来重现你的问题,所以我无法测试我的解决方案,但我认为这是因为因子尺度上的一条线不起作用,所以你应该使用:

p1 <- p1 +  geom_line(data = subset(df, Year == 2006),  
                      aes(x = State, y = Total.Poverty / 1000), colour = "blue")

反而。


推荐阅读