我想在ggplot的交互图中手动更改几行的线型。本质上,x =连续y =连续,主持人=绝对(5个级别)。
我已经使用scale_linetype_manual参数指定了所需的线型,但是由于任何原因,线型都没有改变。我能够成功更改线条颜色,但不能成功更改线型。
ggplot(data=subset(study6, !is.na(condition_control)), aes(x=attitude, y=support, color=condition_control)) +
stat_smooth(method="lm", se = FALSE) +
labs(x ="Initial attitudes", y = "Policy support") +
guides(color=guide_legend(title="Condition")) +
scale_linetype_manual(values=c("solid", "dashed", "solid", "dashed", "solid")) +
scale_color_manual(values=c("red", "gray70", "gray70", "black", "black")) +
theme_bw()
问题可能与分类调节变量(condition_control)有关?您对此事有任何建议,将不胜感激。
答案 0 :(得分:0)
对于其他可能遇到此问题的人,我已经弄清楚了!
您必须在aes函数中将主持人同时指定为颜色和线型。 (注意:这将为您提供两个不同的图例,因此您必须确保为每个图例赋予相同的标题,才能将它们折叠为一个图例。)
ggplot(data=subset(study6, !is.na(condition_control)), aes(x=attitude, y=support, color=condition_control, linetype = condition_control)) +
stat_smooth(method="lm", se = FALSE) +
labs(x ="Initial attitudes", y = "Policy support") +
guides(color=guide_legend(title="Condition")) +
scale_linetype_manual("Condition", values=c("solid", "twodash", "solid", "twodash", "solid")) +
scale_color_manual("Condition", values=c("red", "gray70", "gray70", "black", "black")) +
theme_bw()