ArcGIS Pro 2019-nCoVn河南省疫情热点图制作
背景:在数据可视化中,热点图是重要的一种形式。说到热点图,我们经常想到的是插值法,但是有时候我们并不是对属性进行热点制作,仅仅是对于点空间分布的位置进行密度分析,ArcMap中确实也有点的核密度计算,但是效果却不尽任意,只要体现在密度的搜索半径无法控制,得到的结果差强人意。我们需要的结果如下图所示,这种效果类似于百度地图的热点图效果。
一、ArcGIS Pro的热点图原理
ArcGIS Pro中的点要素核密度分析主要适用于计算要素在其周围领域中的的密度,通过离散点数据进行内插,落入搜索区的点具有不同的权重,靠近搜索中心的点会被赋予较大的权重,反之,则权重较小,他的计算结果分布较平滑。
点要素核密度分析用于计算每一个输出栅格像元周围的点要素的密度,每个点上方均覆盖着一个平滑曲面,在点所在位置处表面值最高,随着与点的距离增大表面值逐渐减小,在与点的距离等于搜索半径的位置处表面值为零,仅允许使用圆形领域。
ArcGIS的半径搜索算法:
1.计算出入点平均中心,如果所选的权重字段不是None,则此计算以下所有计算都将通过该字段中的值进行加权。
2.计算与所有点的加权平均中心之间的距离。
3.计算这些距离的加权中值Dm。
4.计算加权标准距离SD
S
e
a
r
c
h
R
a
d
i
u
s
=
0.9
∗
m
i
n
(
S
D
,
1
ln
(
2
)
∗
D
m
)
∗
n
0.2
SearchRadius = 0.9*min(SD,\sqrt\frac{1}{\ln(2)}*D_m)*n^{0.2}
SearchRadius=0.9∗min(SD,ln(2)1∗Dm)∗n0.2
二、数据收集
疫情数据的详细数据可以在每个省的卫生健康委员会官网查找,有的省卫生健康委员会官网没有患者的详细情况,需要去市级健康委员会官网进行查找,如下图。
收集数据时要记录号确诊日期,并将收集到的数据用excel进行字符串提取,获得住址、年龄、性别以及是否与武汉接触等属性。字符串提取可以使用mod()和find()函数进行自动提取,是否与武汉接触可以使用if函数判断(IF(ISNUMBER(FIND(“武汉”,J2)),“有”,“无”)),然后根据住址获取详细的经纬度数据,可在该网址查找http://www.gpsspg.com/maps.htm,选择一百度地图为基准,得到数据如下,因为我们要制作的是时序动态热点图,所以我们还需要将表格按照确诊时间分成各个子表格。
三、ArcGIS Pro制图
ArcGIS Pro可以在官网申请21天免费使用,用邮箱注册即可,下载安装后,登录注册用户名和密码就可使用,首先新建一个地图工程,在单击–>添加数据,将每一个表格添加到pro中,如下图。
右击表格–>显示xy数据,设置参数x字段为经度,y字段为纬度,坐标为WGS_84。将所有表格转化为是矢量点数据。
添加河南省的县划数据,并右击–>符号系统,设置符号样式为单一符号,颜色偏蓝黑色。单击–>插入里面的新建布局,设置宽度长度为800600mm,横向;然后单击–>地图框选择地图后,在布局中左击绘制即可添加地图,右击激活地图框,可调整地图的比例尺到合适范围。然后调整点符号样式。
右击转化的矢量点数据图层–>符号系统,选择热点图,半径是指圆的大小,即搜索半径,权重字段选择无,方法选择动态比较,静态效果不好,渲染质量视电脑配置去调整,质量最好画质越高。配色方案上我们需要手动调整。
在配色方案的小三角里面可以选择–>设置配色方案配置,通过调整添加色带笔间隔,可以添加不同颜色,我们可以设置宝石绿–>黄–>红的渐变颜色,对于初期的图层由于点的密度教较小,我们可以将绿色色带拉到最右边,这样热点只有绿色,在根据点的变化拉出黄色色带,以及红色色带,这样形成随着时间的变化,热点呈现颜色逐渐加深的效果。
在制图完成后,可以将全部图层关闭显示,单击–>共享–>布局,将每个图层分别显示导出成png,分辨率设置为至少100。
在ps中通过时间轴每个图层做成关键帧窗口,插入相应的数据统计图,配以文字显示,在导出为GIF即可。