R语言ggplot2如何将两国数据的两条线性回归线绘制在同一图中
调整方法
你当前的图表分开展示是因为调用了facet_grid(countryname~.)分面语句,该语句会按countryname的取值拆分生成独立子图。只需去掉分面语句,同时将countryname加入美学映射,用来区分不同国家的点和回归线即可。
方案1:用颜色区分两组数据(最常用)
ggplot(data = merge1, aes(x = intp.trust, y = confidence, color = countryname)) + geom_point(size = 0.5) + geom_smooth(method = "lm", formula = y~x)
该代码会自动为两个国家的散点和回归线分配不同颜色,默认还会生成图例说明对应关系。
方案2:同时用颜色+线型区分(适合黑白打印场景)
如果需要适配黑白输出,可以同时增加线型映射:
ggplot(data = merge1, aes(x = intp.trust, y = confidence, color = countryname, linetype = countryname)) + geom_point(size = 0.5) + geom_smooth(method = "lm", formula = y~x)
内容的提问来源于stack exchange,提问作者Xingchen LIU
相关产品推荐
相关产品推荐

