小编gpe*_*gpe的帖子

自动化R中的大圆形地图制作

我在流动数据大圆映射教程中学到了一些我学到的东西,并将它们与评论中链接的代码结合起来,以防止在R绘制跨赤道大圆时发生奇怪的事情.这给了我这个:

airports <- read.csv("/home/geoff/Desktop/DissertationData/airports.csv", header=TRUE) 
flights <- read.csv("/home/geoff/Desktop/DissertationData/ATL.csv", header=TRUE, as.is=TRUE)

library(maps)
library(geosphere)

checkDateLine <- function(l){
  n<-0
  k<-length(l)
  k<-k-1
  for (j in 1:k){
    n[j] <- l[j+1] - l[j]
  }
  n <- abs(n)
  m<-max(n, rm.na=TRUE)
  ifelse(m > 30, TRUE, FALSE)
}
clean.Inter <- function(p1, p2, n, addStartEnd){
  inter <- gcIntermediate(p1, p2, n=n, addStartEnd=addStartEnd)
  if (checkDateLine(inter[,1])){
    m1 <- midPoint(p1, p2)
    m1[,1] <- (m1[,1]+180)%%360 - 180
    a1 <- antipode(m1)
    l1 <- gcIntermediate(p1, a1, n=n, addStartEnd=addStartEnd)
    l2 <- gcIntermediate(a1, p2, n=n, addStartEnd=addStartEnd)
    l3 …
Run Code Online (Sandbox Code Playgroud)

gis r data-visualization map great-circle

8
推荐指数
1
解决办法
1151
查看次数

标签 统计

data-visualization ×1

gis ×1

great-circle ×1

map ×1

r ×1