【发布时间】:2016-02-26 15:15:35
【问题描述】:
大家好,我在将数据分组并在ggplot() 中进一步绘制时遇到问题。我的数据由几列组成,其中前 4 个(全部)对应于“样本 ID”,另外两个是 Zeit(以秒为单位的时间)和 Temp。
我需要为每个样本绘制时间与温度的关系图,但是按其 ID 对其进行分组非常具有挑战性,目前我无法弄清楚。
样本数据:
> dput(sampledata)
structure(list(a = c(703210L, 703210L, 703210L, 703210L, 703210L,
703210L, 703210L, 703210L, 703210L, 703210L, 703210L, 703210L,
703210L, 703210L, 703210L, 703210L, 703210L, 703210L, 703210L,
703210L), b = c(3988L, 3988L, 3988L, 3988L, 3988L, 3988L,
3988L, 3988L, 3988L, 3988L, 3988L, 3988L, 3988L, 3988L, 3988L,
3988L, 3988L, 3988L, 3988L, 3988L), c = c(1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L
), d = c(1L, 1L, 1L, 1L, 1L, 1L, 3L, 3L, 3L, 3L, 3L, 3L,
4L, 4L, 4L, 4L, 4L, 4L, 5L, 5L), Zeit = c(0L, 240L, 300L, 420L, 540L, 546L,
0L, 180L, 300L, 360L, 540L, 546L, 0L, 180L, 300L, 360L, 540L,
545L, 0L, 120L), Temp = c(913L, 675L, 570L, 514L, 515L, 355L,
867L, 687L, 575L, 543L, 518L, 437L, 874L, 690L, 577L, 562L, 529L,
455L, 856L, 721L)), .Names = c("a", "b", "c", "d",
"Zeit", "Temp"), row.names = 2317:2336, class = "data.frame")
相同的数据,但格式我可以准确解释定义样本 ID 的 4 列的含义:
a b c d Zeit Temp
2317 703210 3988 1 1 0 913
2318 703210 3988 1 1 240 675
2319 703210 3988 1 1 300 570
2320 703210 3988 1 1 420 514
2321 703210 3988 1 1 540 515
2322 703210 3988 1 1 546 355
2323 703210 3988 1 3 0 867#here starts the new sample (d=3)
2324 703210 3988 1 3 180 687
2325 703210 3988 1 3 300 575
2326 703210 3988 1 3 360 543
2327 703210 3988 1 3 540 518
2328 703210 3988 1 3 546 437
2329 703210 3988 2 4 0 874#here starts the new sample (c=2)
2330 703210 3988 2 4 180 690
2331 703210 3988 2 4 300 577
2332 703210 3988 2 4 360 562
2333 703210 3988 2 4 540 529
2334 703210 3988 2 4 545 455
2335 703210 3988 3 5 0 856#here starts the new sample (c=3 & d=5)
2336 703210 3988 3 5 120 721
等等...a & b 也发生了变化,所以所有这 4 列一起定义了样本 ID
我尝试在ggplot() 中轻松地绘制它:
ggplot(sampledata, aes(x=Zeit, y=Temp)) + geom_line(size=1.5) #however it was total chaos
比我尝试使用interaction():
ggplot(sampledata, aes(x=Zeit, y=Temp, group=interaction(a,b,c,d))) + geom_line(size=1.5)
我也得到了非常混乱的情节......
有人知道我如何绘制它吗?
感谢您的建议!
【问题讨论】:
-
也许您可以创建额外的列,将您的 4 列连接成一个 ID 列? (
paste) -
嘿,我刚刚尝试过,但仍然很混乱。问题是当我
groupggplot中的一个新列时,时间会混淆,而不是从 0 开始的每条绘图曲线(如 0 秒),都混在一起,毫无意义 -
试着用图片展示你得到的和想要的......