[编辑为具有可运行代码和第二种方法]
我发现了几个似乎相关的链接here、here和here ,但无法直接弄清楚如何将它们应用于我的挑战:我有一个用ggplot2创建的线图,它绘制了一个数据框,包括upper和置信区间较低。我希望它们在图例中简单地显示为“99% CI”,而不是单独显示为“上 CI”和“下 CI”。
library(ggplot2)
library(reshape2)
gmm <- data.frame(x=runif(10), observed=runif(10), theoretical=runif(10),
upper=runif(10), lower=runif(10))
gmm.m <- melt(gmm, id="x")
p1 <- ggplot(data=gmm.m, aes(x, value, colour=variable)) + geom_line()
p1 <- p1 + scale_colour_manual(
values=c("black", "#F8766D", "#7DAF01", "#7DAF01"),
labels=c("Observed","Theoretical","99% Confidence Intervals",""))
将最后一个图例标签设置为空的 "" 就像我要整理出来的一样接近。所以为了清楚起见,我希望两个 CI 在折线图上以相同的颜色显示,我只是不希望它们显示为单独的图例项。
我怀疑这样做的一种方法是在跳过“降低”的同时融化其他变量,然后再添加它。但是,除了(个人)发现这种方法不优雅(更容易说“添加所有内容,但隐藏这个传说”)之外,我这样做的尝试也失败了。
library(ggplot2)
library(reshape2)
gmm <- data.frame(x=runif(10), observed=runif(10), theoretical=runif(10), upper=runif(10))
gmm.m <- melt(gmm, id="x")
gmm.b <- data.frame(x=runif(10),variable='lower', value=runif(10))
p1 <- ggplot(data=gmm.m, aes(x, value, colour=variable)) + geom_line() + scale_colour_manual(values=c("black", "#F8766D", "#7DAF01"), labels=c("Observed","Theoretical","99% Confidence Intervals",""))
p1 <- p1 + geom_line(data=gmm.b, aes(x=x, y=value, legend=FALSE))
plot(p1)