(玖)规划方向技能:以R语言为例的网络大数据可视化技术
目录
1、引言
城市规划应用场景:城市联系、城市群研究与规划、城市集聚、城市层级结构
2、技术操作流程
2.1 软件准备
软件下载地址:https://www.r-project.org/
选择一个镜像地址:
选择一个版本
2.2 R语言下航空交通网络结构图模拟
(1)数据格式规范:包括机场点地理坐标数据、机场之间的航班数据
机场点数据格式(airport.csv),数据格式为三元组(id,lon,lat)每一行代表一个机场的ID号和经纬度
机场之间航班数据csv格式(flights.csv):数据格式为四元组(airlines,airport1,airport2,cnt),每一行代表两个航空公司之间的客流量。
(2)代码实现:
library(maps)
library(geosphere)
xlim <- c(50, 160)
ylim <- c(10, 60)
svg(file="d:/tt.svg", width=20, height=12)
map("world", col="#191919", fill=TRUE, bg="#000000", lwd=0.05, xlim=xlim, ylim=ylim)
airports <- read.csv("d:\\DrChangX\\sns\\airports.csv", header=TRUE)
flights <- read.csv("d:\\DrChangX\\sns\\flights.csv",header=TRUE,as.is=TRUE)
pal <- colorRampPalette(c("#F42F03", "white"))
colors <- pal(50)
fsub <- flights[flights$airline != "A",]
fsub <- fsub[order(fsub$cnt),]
maxcnt <- max(fsub$cnt)
for (j in 1:length(fsub$airline)) {
air1 <- airports[airports$iata == fsub[j,]$airport1,]
air2 <- airports[airports$iata == fsub[j,]$airport2,]
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) )
colindex <- round( (sqrt(fsub[j,]$cnt)/sqrt(maxcnt) ) * length(colors) )
lines(inter, col=colors[colindex], lwd=sqrt(fsub[j,]$cnt)/sqrt(maxcnt))
}
dev.off()
(3)生成svg格式图片,可以直接在浏览器上打开
练习数据下载链接:https://pan.baidu.com/s/1dn9r0v5267xW2Rb12ysQXg 密码:w693
转载自:https://blog.csdn.net/GIS_BT/article/details/80481050