R 为ggplot2中的几何图形文本指定颜色列表

R 为ggplot2中的几何图形文本指定颜色列表,r,ggplot2,R,Ggplot2,用指定的颜色打印 #color generatering map2col<-function(x,pal,limits=NULL){ if(is.null(limits)) limits=range(x) pal[findInterval(x,seq(limits[1],limits[2],length.out=length(pal)+1), all.inside=TRUE)] } tmpC <- map2col(mtcars$cyl, c("red"

用指定的颜色打印

#color generatering
map2col<-function(x,pal,limits=NULL){
    if(is.null(limits)) limits=range(x)
        pal[findInterval(x,seq(limits[1],limits[2],length.out=length(pal)+1), all.inside=TRUE)]
    }
tmpC <- map2col(mtcars$cyl, c("red", "blue", "yellow"))
#plot 
p <- ggplot(mtcars, aes(x=wt, y=mpg, label=rownames(mtcars)))
p + geom_text(aes(colour=tmpC))
#颜色生成

map2col尝试对geom_文本调用进行以下细微更改:

#plot 
p <- ggplot(mtcars, aes(x=wt, y=mpg, label=rownames(mtcars)))
p + geom_text(colour=tmpC)

注意:ggplot2不会在aes内部的颜色分配中抛出错误,它只是忽略与数据帧中的任何内容不匹配的值。

使用
scale\u color\u manual
。您能对此做一个简单的解释吗?非常感谢。
p + geom_text(colour=rep(c('red','purple'), length.out = nrow(mtcars)))