拓端tecdat|R语言编程指导ggmap空间可视化机动车碰撞–街道地图热力图

时间:2022-11-27 20:56:24

R语言ggmap空间可视化机动车碰撞–街道地图热力图


拓端tecdat|R语言编程指导ggmap空间可视化机动车碰撞–街道地图热力图

拓端tecdat|R语言编程指导ggmap空间可视化机动车碰撞–街道地图热力图

在本文中,我将创建纽约市机动车碰撞的市镇级热图。数据来自纽约市开放数据。特别是,我将从镇级碰撞到街道级碰撞。在下面,我加载ggmap包和数据。

library(ggmap)
comm=regexpr(',',d_clean$LOCATION)
# create year variable
d_clean$year=substr(d_clean$DATE,7,10)

拓端tecdat|R语言编程指导ggmap空间可视化机动车碰撞–街道地图热力图

 

我使用下面的三个函数来处理我的数据。boro()函数子集用于与指定自治市中的街道名称。accident_freq()函数计算每条街道的碰撞频率,然后将这些数字合并。Assign_col()函数获取特定市镇的碰撞级别数据集(使用accident_freq()函数创建),并为每条街道分配从白色到指定颜色(例如绿色,红色等)的颜色。碰撞更多的街道将更暗。

man_col=assign_col(man_freq,'dodgerblue')
bronx_col=assign_col(bronx_freq,'darkred')
*_col=assign_col(*_freq,'violet')
si_col=assign_col(si_freq,'darkgreen')
q_col=assign_col(q_freq,'darkgoldenrod4')

拓端tecdat|R语言编程指导ggmap空间可视化机动车碰撞–街道地图热力图

最后,我使用ggmap的get_map()函数获取NYC的样式图并添加geom_path图层。每个市只有一个geom_path()层。Geom_path()使用直线或“路径”连接同一条街道上的所有经度和纬度点。组中的所有坐标都已连接。然后使用col =参数为每行赋予一个由assign_col()确定的颜色。

ny_plot+
geom_path(data=man,size=1,aes(x=man$long, y=man$lat,group=man$ON.STREET.NAME),col=man_col[man_freq$freqPerc])+
geom_path(data=bronx,size=1,aes(x=bronx$long, y=bronx$lat,group=bronx$ON.STREET.NAME),col=bronx_col[bronx_freq$freqPerc])+
geom_path(data=*,size=1,aes(x=*$long, y=*$lat,group=*$ON.STREET.NAME),col=*_col[*_freq$freqPerc])+
geom_path(data=si,size=1,aes(x=si$long, y=si$lat,group=si$ON.STREET.NAME),col=si_col[si_freq$freqPerc])+
geom_path(data=q,size=1,aes(x=q$long, y=q$lat,group=q$ON.STREET.NAME),col=q_col[q_freq$freqPerc])+
ggtitle('Street-Level NYC Vehicle Accidents by Borough')+
xlab(" ")+ylab(" ")

拓端tecdat|R语言编程指导ggmap空间可视化机动车碰撞–街道地图热力图

拓端tecdat|R语言编程指导ggmap空间可视化机动车碰撞–街道地图热力图

拓端tecdat|R语言编程指导ggmap空间可视化机动车碰撞–街道地图热力图

▍关注我们 【大数据部落】第三方数据服务提供商,提供全面的统计分析与数据挖掘咨询服务,为客户定制个性化的数据解决方案与行业报告等。