我正在尝试构建图表控件。我想明确绿线(abline1)是中心线,红线(abline2和abline3)是限制控制。
你能帮助我吗?
library(ggplot2)
amostra <- rnorm(30, 10)
qplot(y = amostra, x = seq_along(amostra), ylim = c(5,15), main = "Gráfico de Controle", xlab = 'Período', ylab = 'Valores') + geom_line() +
geom_abline(aes(slope=0, intercept=10), colour = 'green', size=1) +
geom_abline(aes(slope=0, intercept=7), colour='red', size = 1) +
geom_abline(aes(slope=0, intercept=13), colour='red', size = 1) +
theme(plot.title = element_text(hjust = 0.5))
答案 0 :(得分:3)
如果你想要一个传奇,那么你需要一个美学映射。在aes()
中移动颜色并添加scale_color_identity()
。您可以使用
qplot(y = amostra, x = seq_along(amostra), ylim = c(5,15), main = "Gráfico de Controle", xlab = 'Período', ylab = 'Valores') + geom_line() +
geom_abline(aes(slope=0, intercept=10, colour = 'green'), size=1) +
geom_abline(aes(slope=0, intercept=7, colour='red'), size = 1) +
geom_abline(aes(slope=0, intercept=13, colour='red'), size = 1) +
theme(plot.title = element_text(hjust = 0.5)) +
scale_color_identity(labels=c("central","limits"), guide="legend")
答案 1 :(得分:1)
这是一个相当糟糕的黑客,但是为了强制线条在图例中,您可以尝试使用geom_errorbarh()
函数绘制它们。这将绘制错误栏。如果在使用scale_x_continuous()
明确设置绘图宽度的同时使它们与绘图一样宽,则可以使用图例中显示的水平条。