我想绘制使用传单的线条,但是我在分隔段时遇到了一些困难。我有一个对象,看起来像这样传单单独行
> head(trips, n=15)
time.start time.end long.start long.end lat.start lat.end distance time.diff speed color
1 1476450598 1476450713 9.03913 9.03924 45.61335 45.61362 31.25292 115 0.9783524 green
2 1476450713 1476450727 9.03924 9.03995 45.61362 45.61365 55.38651 14 14.2422459 green
3 1476450727 1476450751 9.03995 9.04005 45.61365 45.61340 28.89870 24 4.3348057 green
4 1476450751 1476450777 9.04005 9.04017 45.61340 45.61406 74.06267 26 10.2548313 green
5 1476450777 1476450873 9.04017 9.03949 45.61406 45.61419 54.89125 96 2.0584219 green
6 1476450873 1476450920 9.03949 9.03496 45.61419 45.61319 369.88687 47 28.3317600 green
7 1476450920 1476450930 9.03496 9.03440 45.61319 45.61295 51.13973 10 18.4103034 green
8 1476450930 1476450932 9.03440 9.03448 45.61295 45.61285 12.75643 2 22.9615714 green
9 1476450932 1476450982 9.03448 9.03495 45.61285 45.61241 61.14351 50 4.4023330 green
10 1476451362 1476451363 9.03553 9.03559 45.61197 45.61188 11.05462 1 39.7966396 green
11 1476451363 1476451373 9.03559 9.03606 45.61188 45.61129 75.18742 10 27.0674701 green
12 1476451373 1476451382 9.03606 9.03712 45.61129 45.61127 82.57276 9 33.0291031 green
13 1476451382 1476451405 9.03712 9.04059 45.61127 45.61095 272.54942 23 42.6599094 green
14 1476451405 1476451412 9.04059 9.04115 45.61095 45.61091 43.83450 7 22.5434586 green
15 1476451412 1476451431 9.04115 9.04440 45.61091 45.61064 254.85994 19 48.2892512 green
该文件表示两个行程为例(还有很多,但它只是给一个想法),理想点9号(第一次行程结束)不应该与第10点(第2次旅行的开始)相关联。我得到这个用命令
ggmap(mapImageData)+
geom_segment(data=trips, mapping=aes(y=trips$lat.start, x=trips$long.start,
yend=trips$lat.end, xend=trips$long.end),color=trips$color,size=1)
做在此代码mapImageData
是单张的瓷砖,然后我增加点用命令geom_segment
相当于,指定每个点的最初和最后的位置。
使用单张我必须使用命令addPolylines(data = mydata, lng = ~long, lat = ~lat, weight=1,color="purple")
。所不同的是,这个命令要经度列和纬度的一列,在我的例子是这样的
head(mydata, n=15)
lat long
1 45.61335 9.03913
2 45.61362 9.03924
3 45.61365 9.03995
4 45.61340 9.04005
5 45.61406 9.04017
6 45.61419 9.03949
7 45.61319 9.03496
8 45.61295 9.03440
9 45.61285 9.03448
10 45.61197 9.03553
11 45.61188 9.03559
12 45.61129 9.03606
13 45.61127 9.03712
14 45.61095 9.04059
15 45.61091 9.04115
但这将连接所有的点,我怎么能知道什么时候不连点?例如位置号码。 9和10不应该相互关联。 谢谢, Marco
可以融化的数据,并保留该行的名称。使用'group'参数(行名称将是分组)来指定开始和结束。 – troh