我使用alpha为ggplot中的平滑线设置透明度,但我只在围绕拟合线的误差范围内获得透明度。
我的代码如下:
z1 <- rnorm(10)
z2 <- z1 ^ 2
error <- rnorm(10, 0.25)
y <- 1 + 0.5 * z1 + error
data1 <- data.table(y, z1, z2)
ggplot(data1) +
geom_point(aes(x = z1, y = y), color = "blue", size = 3) +
geom_point(aes(x = z2, y = y), color = "red", size = 3) +
geom_smooth(method = lm, aes(x = z1, y = y), color = "blue", size = 2, alpha = 0.1) +
geom_smooth(method = lm, aes(x = z2, y = y), color = "red", size = 2, alpha = 0.1)
如何明确设置回归线的透明度?
您的建议将不胜感激。
答案 0 :(得分:4)
您可以使用geom_line
更精细地控制回归线。
ggplot(data1) +
geom_point(aes(x = z1, y = y), color = "blue", size = 3) +
geom_point(aes(x = z2, y = y), color = "red", size = 3) +
geom_line(stat = "smooth", method = lm, aes(x = z1, y = y), color = "blue", size = 2, alpha = 0.1) +
geom_line(stat = "smooth", method = lm, aes(x = z2, y = y), color = "red", size = 2, alpha = 0.1) +
geom_smooth(method = lm, aes(x = z1, y = y), color = NA, size = 2, alpha = 0.1) +
geom_smooth(method = lm, aes(x = z2, y = y), color = NA, size = 2, alpha = 0.1)