ArcGIS教程ArcGIS之Cartogram地图变形记.docx

ArcGIS教程ArcGIS之Cartogram地图变形记.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

地理国情监测云平台

地理国情监测云平台

一、地图会说谎

地图作为真实世界的抽象,是“用图说话”最可靠的工具,但是有的时候地图也会撒一些小小的谎言,其中最著名的例子当属美国总统大选。如图1是2012年美国总统大选后网上给出的一个结果图,红色代表共和党罗姆尼获胜的州,蓝色代表民主党奥巴马获胜的州,从地图来看罗姆尼占有很大的优势,而事实却是奥巴马赢得了大选的胜利!因为在这幅地图中,用颜色来对州来进行定性渲染时,却无意中忽略了选票这个数量指标,所以在这张地图上无法反映出奥巴马的选票优势,这也是为什么有Cartogram出现的原因。

图12012年美国大选各州获胜结果示意图

Cartogram又称变形地图或夸张地图,是比较早出现的一种统计地图形式,其历史可以追溯到1868年。Cartogram可以依据某个专题属性对地理要素进行扭曲、变形,用专题属性值的大小取代真实面积,利用夸张的效果更直观地反映数量特征。主流的Cartogram可以分为连续和非连续两类,连续的变形地图是指要素仍然维持原有邻接的拓扑关系,ArcGIS可以支持这种变形的算法;非连续的变形地图指要素之间不再具有相邻接的关系。如图2中就是一种连续的变形地图,根据选票对各个州进行了形状扭曲,利用夸张后的面积来反映选票的数量。

图22012年美国大选各州选票变形地图二、ArcGIS制作Cartogram实例

在这片小文中,我们就在ArcGIS中来真实地再现美国总统大选的这个例子。数据获取:

2012年大选的选票结果可见网站,我们可以把表格直接保存下来存为csv格式(/RESULTS/data.php?year=2012datatype=nationaldef=1f=0off=0elect=0)

数据处理:

把上面得到的表格与美国州的地理数据(矢量面数据)使用join关联起来,完整的属性信息如下所示:

为了区分哪些是奥巴马选票多的州,哪些是罗姆尼选票多的州,需添加一个字段flag,使用字段计算器为其赋值(1为奥巴马获胜的州,-1为罗姆尼获胜的州),这里我们选择Python来写代码:

defcalflag(o,r):

if(or):

return1else:

return-1

下面我们就要开始对地图进行变形,那么每个州的变形取决于其获胜者的选票数量,这就要再添加一个字段vote,使用字段计算器为其赋值:

defcalvote(flag,o,r):

if(flag==1):

returnoelse:

returnr

打开Cartogram工具(下载地址/details.asp?dbid=15638),参数设置如下:

图层渲染:

对Cartogram工具输入和输出的两个图层都使用下面的渲染方法进行显示,就分别得到了前面图1和图2中的地图。

Cartogram工具使用说明:

1.如果使用的是ArcGIS10及以上版本,需要对工具中的两个dll文件进行注册,在命令行中输入

regsvr32+dll存放路径,例如:

regsvr32“F:\ArcGISTools\Cartograms\BnchMrkCartogram.dll”2.valuefield只能处理正数,如果有小数和负数则执行会发生错误;3.输出的格式只能为Geodatabase。

文档评论(0)

tianya189 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档