我正在尝试在地图上绘制网络,我收到上述错误。我看起来类似stackoverflow问题,但他们没有帮助。我是R的新成员。
这是数据(test.csv):
from,to
1,2
2,3
3,1
这是纬度和经度数据(test1.csv):
id,long,lat
1,19.0759837,72.8776559
2,23.022505,72.5713621
3,28.4594965,77.0266383
我正在尝试使用以下代码绘制网络:
library(igraph)
library(maps)
library(geosphere)
map("world", col="skyblue", border="gray10", fill=TRUE, bg="gray30")
firminfo <- read.csv(file="test1.csv")
supplynet <- read.csv(file="test.csv")
for(i in 1:nrow(supplynet)) {
node1 <- firminfo[firminfo$id == supplynet[i,]$from,]
node2 <- firminfo[firminfo$id == supplynet[i,]$to,]
arc <- gcIntermediate( c(node1[1,]$long, node1[1,]$lat),
c(node2[1,]$long, node2[1,]$lat),
n=2, addStartEnd=TRUE )
lines(arc, lwd=0.05)
}
这是给出以下错误:
Error in .pointsToMatrix(p1) : Wrong length for a vector, should be 2
我该如何解决这个问题?我是R的新手,任何提示都会对我有帮助。