用ggplot绘制R中不等长离散群
我试图用一个键值来绘制一些基本的顺序数据。下面是一个示例data.frame来说明这个问题用ggplot绘制R中不等长离散群,r,ggplot2,R,Ggplot2,我试图用一个键值来绘制一些基本的顺序数据。下面是一个示例data.frame来说明这个问题 testDf <- data.frame("x1" = c(26.7, 33.0, 23.6, 18.4, 26.7, 75.0, 52.5, 51.5, 56.1, 60.1, 57.7, 37.6, 32.1, 47.7, 65.7, 55.9, 29.6, 32.1, 26.6, 19.3), "y1" = c(8.1, 3.5, 4.9, 24.6, 23.6, 2.8, 95.7,
testDf <- data.frame("x1" = c(26.7, 33.0, 23.6, 18.4, 26.7, 75.0, 52.5, 51.5, 56.1, 60.1, 57.7, 37.6, 32.1, 47.7, 65.7, 55.9, 29.6, 32.1, 26.6, 19.3),
"y1" = c(8.1, 3.5, 4.9, 24.6, 23.6, 2.8, 95.7, 93.9, 84.5, 83.0, 94.7, 74.4, 32.5, 6.7, 5.6, 40.7, 25.6, 16.5, 13.2, 22.6),
"x2" = c(33.0, 23.6, 18.4, 26.7, 75.0, 77.2, 51.5, 56.1, 60.1, 57.7, 37.6, 32.1, 47.7, 65.7, 77.9, 58.0, 32.1, 26.6, 19.3, 22.2),
"y2" = c(3.5, 4.9, 24.6, 23.6, 3.3, 3.1, 93.9, 84.5, 83.0, 94.7, 74.4, 32.5, 6.7, 5.6, 3.7, 43.3, 16.5, 13.2, 22.6, 24.3),
"event" = c(8, 1, 1, 1, 1, 44, 8, 1, 1, 11, 12, 1, 1, 1, 36, 8, 8 , 1, 1, 12) )
testDf您可以通过获取event==8的累积和来获取组的指标变量
testDf$ind <- cumsum(testDf$event == 8)
有了此索引列,您应该能够使用ggplot2获取您要查找的图形。您能否澄清您要寻求的帮助(即,您想要的结果是什么)?似乎您正在寻找一种方法来创建一个适当的指标变量,以传递给ggplot的组
美学,但你的最后一段让我有点不确定,是因为你的分组有问题,还是因为你在ggplot端出现了无法解释的行为。因此,下面的答案是最直接的,但你的评论也很有帮助。我试着使用Reforme2将宽度转换为长度。但是没有得到我需要的结果。我完全忘记了ggplot中的“组”。谢谢。我以前从来没有这样用过“cumsum”。另一支箭射向箭袋。
x1 y1 x2 y2 event ind
1 26.7 8.1 33.0 3.5 8 1
2 33.0 3.5 23.6 4.9 1 1
3 23.6 4.9 18.4 24.6 1 1
4 18.4 24.6 26.7 23.6 1 1
5 26.7 23.6 75.0 3.3 1 1
6 75.0 2.8 77.2 3.1 44 1
7 52.5 95.7 51.5 93.9 8 2
8 51.5 93.9 56.1 84.5 1 2
9 56.1 84.5 60.1 83.0 1 2
10 60.1 83.0 57.7 94.7 11 2
11 57.7 94.7 37.6 74.4 12 2
12 37.6 74.4 32.1 32.5 1 2
13 32.1 32.5 47.7 6.7 1 2
14 47.7 6.7 65.7 5.6 1 2
15 65.7 5.6 77.9 3.7 36 2
16 55.9 40.7 58.0 43.3 8 3
17 29.6 25.6 32.1 16.5 8 4
18 32.1 16.5 26.6 13.2 1 4
19 26.6 13.2 19.3 22.6 1 4
20 19.3 22.6 22.2 24.3 12 4