【发布时间】:2021-01-07 11:17:58
【问题描述】:
我有一个数据框,其中两列是 sfc 点列表。
> head(moves)
hiring start end
1 1 POINT (-2.030474 51.36306) POINT (-2.250102 51.41609)
2 2 POINT (-2.319776 51.46162) POINT (-2.491189 51.41029)
3 4 POINT (-2.025846 51.47712) POINT (-2.063781 51.49158)
4 6 POINT (-2.426711 51.38076) POINT (-2.132722 51.46999)
5 7 POINT (-2.116654 51.4887) POINT (-2.204403 51.51874)
6 8 POINT (-2.122917 51.5861) POINT (-2.134635 51.51806)
我需要逐行从一个点到另一个点画线(理想情况下是指向的)。我的问题似乎是我的文件(移动)不是 sf 对象。我需要制作一个,还是将其中的数据转换成其他格式?
> dput(head(moves))
structure(list(hiring = c(1L, 2L, 4L, 6L, 7L, 8L), start = list(
structure(c(-2.03047447566941, 51.3630641761757), class = c("XY",
"POINT", "sfg")), structure(c(-2.31977575385362, 51.4616210429381
), class = c("XY", "POINT", "sfg")), structure(c(-2.02584648038463,
51.4771163047678), class = c("XY", "POINT", "sfg")),
structure(c(-2.42671091326068,
51.3807643595824), class = c("XY", "POINT", "sfg")),
structure(c(-2.1166538974769,
51.4887039877758), class = c("XY", "POINT", "sfg")),
structure(c(-2.12291705783767,
51.5860957106472), class = c("XY", "POINT", "sfg"))), end = list(
structure(c(-2.25010169528537, 51.4160891285008), class = c("XY",
"POINT", "sfg")), structure(c(-2.49118920138511, 51.4102939905029
), class = c("XY", "POINT", "sfg")), structure(c(-2.06378098244424,
51.491583244303), class = c("XY", "POINT", "sfg")),
structure(c(-2.13272163343155,
51.469987047928), class = c("XY", "POINT", "sfg")),
structure(c(-2.20440279315621,
51.5187438721622), class = c("XY", "POINT", "sfg")),
structure(c(-2.1346350057738,
51.5180564842074), class = c("XY", "POINT", "sfg")))), row.names = c(NA,
6L), class = "data.frame")
【问题讨论】:
-
能否请您提供数据,以便人们可以轻松运行代码并帮助您?您可以简单地运行
dput(head(moves)),然后其他人可以在他们的 R 会话中复制/粘贴输出并获取数据。另请说明您正在寻找哪种情节。它是在地图的顶部还是只是在两对点之间带有箭头的白色背景? -
我已经添加了数据。最终,我将添加 CRS 并将其放在地图上,但现在我的问题是找到一种方法来绘制我需要的东西。