gpt4 book ai didi

r - 向 ggplot 添加图例 - 颜色名称无效

转载 作者:行者123 更新时间:2023-12-04 14:58:50 26 4
gpt4 key购买 nike

我查看了文档和帖子,如 this ,但我不清楚。显然,图例是自动创建的,我必须将颜色映射到解释文本。

数据示例:

vtm1<- c(1,3,4)
vmean<-c(3.9,3.8,3)
vmax<-c(4.1,4.2,4)
vmin<-c(3,2.5,2)
rtm1<- c(1,2,4,5)
rmean<-c(3.9,3.85,3.7,3.1)
rmax<-c(4.1,4.2,4,3.9)
rmin<-c(3,2.5,2,1.9)
gtm1<- c(2,4,5)
gmean<-c(4.1,3.9,3)
gmax<-c(4.1,4,3.9)
gmin<-c(3,2.5,1.5)
vns <- data.frame(vtm1, vmean, vmax, vmin)
gibbs <- data.frame(gtm1, gmean, gmax, gmin)
rw <- data.frame(rtm1, rmean, rmax, rmin)

plt <- ggplot(NULL, aes(x= vtm1))
plt + xlab("Number of TM lookups") + ylab("Cross-entropy") +
xlim(0, 30000000) +
ylim(3.15,4.2)+
geom_ribbon(data=gibbs, aes(x = gtm1, ymin= gmin, ymax= gmax), fill="#A8A8A8") +
geom_ribbon(data=rw, alpha=0.5, aes(x = rtm1, ymin= rmin, ymax= rmax), fill="red")+
geom_ribbon(data=vns, alpha=0.5, aes(x = vtm1, ymin= vmin, ymax= vmax), fill="mycolor")+
geom_line(data=gibbs, linetype = "dotdash", aes(x=gtm1,y=gmean)) +
geom_line(data=vns,aes(x=vtm1,y=vmean)) + geom_line(data=rw, linetype = "dashed", aes(x=rtm1,y=rmean)) +
geom_hline(yintercept=3.2240952381, linetype = "dotted", color="mycolor2")+
geom_hline(yintercept=3.44366666666667, linetype = "dotted") +
theme_bw( )+
scale_colour_manual(name="Lines", values=c("mycolor"="blue","mycolor2"="red")) +
scale_linetype_manual(name="Lines", values=c("mycolor"="dotted","mycolor2"="dashed"))

R 不断给我错误:
Error in col2rgb(colour, TRUE) : invalid color name 'mycolor'

最佳答案

这是一个简化的示例,它应该说明 ggplot2 的一般原理:

names(vns) <- c("tm1", "mean", "max", "min")
names(gibbs) <- c("tm1", "mean", "max", "min")
names(rw) <- c("tm1", "mean", "max", "min")
vns$what <- "vns"
gibbs$what <- "gibbs"
rw$what <- "rw"

DF <- do.call(rbind, list(vns, gibbs, rw))

plt <- ggplot(DF, aes(x= tm1, ymin= min, ymax= max, y=mean)) +
geom_ribbon(aes(fill=what), alpha=0.3) +
geom_line(aes(colour=what))
print(plt)

enter image description here

如您所见,所有数据都存在于一个 data.frame 中,并且使用因子变量对其进行分组并映射到 fill/ colour/... 您可以使用 scale_manual_*如果您对默认设置不满意。

关于r - 向 ggplot 添加图例 - 颜色名称无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22483274/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com