R 按组更改hline的颜色:ggplot2
我有一个R 按组更改hline的颜色:ggplot2,r,ggplot2,R,Ggplot2,我有一个facet\u grid图,每个图有2个geom\u hlines。我想把每一行分别涂上颜色。我想如果我将此颜色添加到geom\u hline数据框中,我可以提供aes内部的颜色。此选项按组着色,但使用默认的ggplot颜色 代码如下: p <- qplot(mpg, factor(sample(c("a", "b", "c", "d"), nrow(mtcars), T)), data=mtcars, facets = vs ~ am) hline.da
facet\u grid
图,每个图有2个geom\u hline
s。我想把每一行分别涂上颜色。我想如果我将此颜色添加到geom\u hline
数据框中,我可以提供aes
内部的颜色。此选项按组着色,但使用默认的ggplot颜色
代码如下:
p <- qplot(mpg, factor(sample(c("a", "b", "c", "d"), nrow(mtcars), T)),
data=mtcars, facets = vs ~ am)
hline.data <- data.frame(z = factor(c("a", "b", "c", "d")),
vs = c(0,0,1,1), am = c(0,1,0,1))
hline.data <- transform(hline.data, z0 = as.numeric(z))
hline.data <- rbind.data.frame(hline.data, hline.data)
hline.data[5:8, 1] <- c("b", "c", "d", "a")
hline.data[5:8, 4] <- c(2, 3, 4, 1)
hline.data[, "col"] <- rep(c("red", "black"), each=4)
p + geom_hline(aes(yintercept = z0, colour=col), hline.data)
p您只需设置刻度值:
+ scale_colour_manual(values = c("black","red"))
您只需设置比例值:
+ scale_colour_manual(values = c("black","red"))
由于您指定的是数据中的精确值(hline.data
),因此需要使用身份等级:
+ scale_colour_identity()
由于您指定的是数据中的精确值(hline.data
),因此需要使用身份等级:
+ scale_colour_identity()
嗯……比例\颜色\手册(值=c(“红色”、“黑色”))
?:)记住,这不是基本图形!哦,天哪,这是一个无聊的时刻,我离开ggplot2太久了。请您作为答案发布。嗯……比例\u颜色\u手册(值=c(“红色”、“黑色”))
?:)记住,这不是基本图形!哦,天哪,这是一个无聊的时刻,我离开ggplot2太久了。这似乎是最明确的+1谢谢。这似乎是最明确的+1谢谢。