maps
とパッケージを使用して作成しgeosphere
た航空会社の地図のような地図があります。ただし、マップ内の「ルート」の方向を示すために、線に矢印を追加したいと思います。私の現在の作業コードを以下に示します ( FlowingDataの素晴らしいチュートリアルに基づいています)。以前に線関数の代わりに矢印関数を使用しようとしましたが、矢印を地球圏の曲線に合わせる方法や、矢印がこのように見えるように線に沿って間隔を空ける方法がわかりません:
-->-->-->
私は R に非常に慣れていないので、あらゆる支援をいただければ幸いです。前もって感謝します。
library(maps)
library(geosphere)
read.csv("http://marsiccr.github.io/Data/airports.csv", header=TRUE, as.is=TRUE) -> airports
read.csv("http://marsiccr.github.io/Data/leaders.csv", header=TRUE, as.is=TRUE) -> flights
pal <- colorRampPalette(c("#f2f2f2", "blue"))
colors <- pal(100)
colleges<-NULL
colleges$name <- airports$insname
colleges$long <- airports$long
colleges$lat <- airports$lat
colleges
map("state")
map("state", col="#f2f2f2", fill=TRUE, bg="white", lwd=0.25)
fsub <- flights[flights$type == "aau",]
fsub <- fsub[order(fsub$cnt),]
maxcnt <- max(fsub$cnt)
for (j in 1:length(fsub$type)) {
air1 <- airports[airports$unitid == fsub[j,]$school1,]
air2 <- airports[airports$unitid == fsub[j,]$school2,]
inter <- gcIntermediate(c(air1[1,]$long, air1[1,]$lat), c(air2[1,]$long, air2[1,]$lat), n=100, addStartEnd=TRUE)
colindex <- round( (fsub[j,]$cnt / maxcnt) * length(colors) )
lines(inter, col=colors[colindex], lwd=0.8)
}