Предполагая, что ваши данные похожи на данные игрушек, которые я создаю ниже, следующее должно это сделать:
# Create some toy data
m <- 10
dat <- data.frame(Minute = rep(0:60, m))
dat$Enrichment <- rep(LETTERS[1:m], each = 61)
dat$TF <- c(replicate(m, cumsum(rnorm(61, mean = 0.3))))
head(dat)
# Minute Enrichment TF
#1 0 A 0.3203584
#2 1 A 0.9571599
#3 2 A 1.5361236
#4 3 A 1.7571507
# ...
#60 59 A 19.25409068
#61 60 A 20.68664549
#62 0 B -0.05674056
#63 1 B 0.64608473
## And so on...
# Your code:
dat$Enrichment <- factor(dat$Enrichment)
plot(TF ~ Minute, data=dat, col=Enrichment, pch=20,xlab="Minute",
ylab="No. of Tongue Flicks", cex.lab=1.5, cex.axis=1.5,
cex.main=1.5, cex.sub = 1.6)
# Draw line for each group (could also be done with a for-loop)
.tmp <- lapply(split(dat, dat$Enrichment),
function(d) lines(TF ~ Minute, data=d, col=Enrichment))
Я подозреваю, что ваша проблемачто время и TF
векторы, которые вы передаете lines
, интерпретируются как два длинных непрерывных вектора значений.Таким образом, он «сбрасывается» после каждой новой группы, поскольку ваш код в основном игнорирует переменную группировки.