我最近有一些代码完全生成了我正在寻找的R中的ggplot
。最近更新我的ggplot
包后,该代码不再按我的意愿运行。新图不再显示水平线的正确线型。线条也没有出现在传奇中。正如我所说,它曾经完美地运作。
以下是使用mtcars
数据集的快速,可重现的示例(我的实际数据无法共享):
model <- lm(mtcars$wt ~ mtcars$hp)
mtcars$pred <- predict(model, mtcars, level = 0)
theme<-theme(axis.title.x = element_text(face="bold"),
axis.text.x = element_text(angle=90, face="bold", colour="black"),
axis.title.y = element_text(face="bold", size=12),
axis.text.y = element_text(angle=90, face="bold", colour="black"),
plot.title = element_text(lineheight=.8, face="bold"),
panel.grid.major = element_line(colour = 'black'),
panel.grid.minor = element_line(colour = NA),
panel.background = element_rect(fill = 'white'),
strip.background = element_rect(fill = 'white'))
plot<-ggplot(mtcars, aes(x = hp, y = pred)) +
geom_point(aes(x=hp, y=wt, color = as.factor(am)), position=position_jitter(width=0.5,height=0.5), alpha = 0.5) +
geom_hline(yintercept = 4.5, size = 1, aes(linetype = "y = 4.5")) +
geom_line(aes(linetype= "Best fit"), size = 1) +
scale_y_continuous(name= "Weight") +
scale_color_manual('AM', values = c('orange', 'purple')) +
scale_linetype_manual('Lines', values = c("Best fit" = 1, "y = 4.5" = 2)) +
xlab("Hewlett Packard") +
guides(linetype = guide_legend(keywidth = 2, keyheight = 1)) +
theme
plot
y=4.5
行应该是虚线,但正如您所看到的那样,它仍然是实心的。此外,它没有在图例中显示。我注意到的另一件事是图例标题格式已经改变。他们曾经是大胆但不再是。
有人可以帮我修改我的代码吗?也有人可以解释为什么会改变吗?
答案 0 :(得分:2)
您应该将yintercept = 4.5
放在aes()
的{{1}}内,然后使用图例和核心线型。
geom_hline()