Предположим, у меня есть некоторый код, подобный следующему, генерирующий линейный участок со значительным количеством строк (пример взят из здесь )
library(ggplot2)
library(reshape2)
n = 1000
set.seed(123)
mat = matrix(rnorm(n^2), ncol=n)
cmat = apply(mat, 2, cumsum)
cmat = t(cmat)
rownames(cmat) = paste("trial", seq(n), sep="")
colnames(cmat) = paste("time", seq(n), sep="")
dat = as.data.frame(cmat)
dat$trial = rownames(dat)
mdat = melt(dat, id.vars="trial")
mdat$time = as.numeric(gsub("time", "", mdat$variable))
p = ggplot(mdat, aes(x=time, y=value, group=trial)) +
theme_bw() +
theme(panel.grid=element_blank()) +
geom_line(size=0.2, alpha=0.1)
Итак, здесь "номер испытания" - моя группа, производящая все эти линии, и есть 1000 испытаний. Предположим, я хочу «сгруппировать свою переменную группировки», то есть я хочу видеть точно такие же линии на этом графике, но я хочу, чтобы первые 500 пробных линий были одного цвета, а следующие 500 пробных линий - другим. Как я могу сделать это с ggplot? Некоторое время я ковырялся и не могу понять, как вручную установить цвета для каждой группы.