Qgis中进行Shp和Excel属性连接实现百强县公共预算空间分析

举报
夜郎king 发表于 2025/11/05 00:03:54 2025/11/05
【摘要】 本文重点讲解如何对一个包含区县信息的excel表格,再结合对应的空间shp数据,将普通的二维表格融合空间shp数据,实现二维数据的空间化,给决策者一种地理尺度上的分布认知,更好的做好经济服务支撑。文中将重点介绍如何使用Qgis软件进行两者的融合,最后基于融合的结果进行制图,得到一个直观的结果。

 前言

        在之前的博文中,将2022的全国百强县一般公共预算收入的数据下载到了本地,博客原文地址:一种使用Java的快速将Web中表格转换成Excel的方法。对于不关注时空位置关系的一般分析,到此也就基本够用了。但是,如果站在全国的视野去观察分析这些全国百强县的时空分布关系,就十分有必要增加一个空间的维度,以此来作为空间分析的基础。

        本文就是在此背景下,重点讲解如何对一个包含区县信息的excel表格,再结合对应的空间shp数据,将普通的二维表格融合空间shp数据,实现二维数据的空间化,给决策者一种地理尺度上的分布认知,更好的做好经济服务支撑。文中将重点介绍如何使用Qgis软件进行两者的融合,最后基于融合的结果进行制图,得到一个直观的结果。

一、数据准备

        在进行系统融合之前,需要准备的两份数据,第一是从网上下载的2022全国百强县一般公共预算收入榜的excel文件。数据列表如下(说明:在全国百强县中,区县名称重复的不对,因此不考虑使用市名称进行二次过滤):

序号 列名 例子
1 县级地区 昆山市
2 所属省 江苏
3 一般公共预算收入(亿元) 430.18


1.jpg

上述是一份excel二维表格数据,为了进行空间分析,因此还需要一份空间数据,这里使用审图号为:2019中国地图-审图号GS(2019)1822号的一份全国区县数据。

1.jpg

序号

参数名

1

名称

县(等积投影)

2 路径 F:\XXX\2019中国地图-审图号GS(2019)1822号\县(等积投影).shp
3

存储

ESRI Shapefile

4 编码

GBK

5

几何图形

Polygon (MultiPolygon)

6

坐标参照系(CRS)

Krasovsky_1940_Albers - 投影

7

单位

8

要素数目

2,901

1.jpg


这里需要牢记属性表中的NAME字段,因为后续将会采用NAME作为数据关联的关键字段。对上述数据进行简单符号化和标注以后,可以看到如下的图件。

1.jpg

二、映射关系建立

        通过仔细对比观察Excel和Shp数据,两份数据通过excel表中的县级地区和Shp数据中的Name字段进行映射关联。它的数学表达如下:

        设R是n元关系,S是m元关系,A是R的属性,B是S的属性,A和B的值域具有相同的数据类型,θ∈{=, ≠, >, <, ≤, ≥}。R和S的连接操作定义为:

1.jpg

其中,r[A]表示元组r在属性A上的值,s[B]表示元组s在属性B上的值。我们称A和B是连接属性。这里的链接应采用等值链接的模式,即Inner Join。翻译成数据库的语句大致就是:Select A.* from TableA A join TableB B on A.xxx = B.xxx。上述理论知识是数据能够建立连接的理论基础。

三、Excel数据导入到Qgis中

        为了方便后续的处理,我们将Excel同样到Qgis平台中。由于Excel是不带空间坐标的,因此无法进行空间位置的展示,只有属性信息展示。在Qgis可以打开Excel的属性表进行属性表信息查看。

1.jpg

在这里可以打开excel的属性,Field3字段与Shp表中的Name字段是有对应关系的。这个要牢记,后续操作会用到。

四、空间数据挂接

         在上述成果之上,我们进行实际的空间数据挂接。操作步骤如下:

        第一步、鼠标单击县(等积投影),打开属性面板。如下图所示:

1.jpg

第二步、点击连接按钮,弹出如下对话框:

1.jpg

第三步、点击新的连接,在新的连接窗口中进行属性的关联和配置。在这里,连接图层注意选择为打开的Excel图层,连接字段选择Field3,目标字段为Name字段。完成后,点击OK即可。

1.jpg

经过上述步骤即可完成属性的挂接,在关闭窗口点击Apply按钮之后,再次打开属性表发现。原来的属性表中已经挂接上了新的属性,后面增加就是。详情如下图所示:

1.jpg

1.jpg

 此时,这几个挂接的字段还不是最终的字段,需要导出要素后自动生成一份新的数据后属性生效,参考坐标系我们修改成4326的。

1.jpg


1.jpg

五、百强县数据过滤

        细心的小伙伴发现,经过挂接后,因为我们是将excel数据挂接到了shp中,excel只有100条数据,而shp中有2901条,有2801条不是我们要的,因此我们要将这部分数据从库中过滤掉。我们打开属性表,发现百强县的挂接字段均有值,因此只需要将值不为空的数据过滤出来即可。

1.jpg

我们发现挂接的属性名字不太友好,我们可以修改成英文或者其他的想要的属性名。

1.jpg

 鼠标右键点击数据,选择过滤,弹出如下对话框,在查询构建器中进行属性的过滤,通过前面的规则说明,对于ggys不是null的数据就是我们需要的,因此我们需要执行的过滤SQL就是

"ggys" is not null

1.jpg

点击测试,可以进行查询结果的验证,通过点击可以得到以下结果:

1.jpg

 这就是全国百强县的数据,可以将得到的数据导出到外部作为下一步制图的基础数据。

六、地图制图

        为了更好的进行空间展示,通过不同的一般性公共预算收入来区分展示,从空间和值域的设置上直观看到不同的区县的收入信息。需要我们根据公共预算收入的值进行制图。具体步骤如下:        

        第一步、符号化,点击需要符号化的图层,选择分类方式进行符号化。

1.jpg

第二步、标注。对区县信息进行空间标注,让读者看起来更直观。

1.jpg

最终得到的效果图(基于省份进行分类)如下所示:

1.jpg

 除了按照省份进行分类外,还可以根据不同的收入类型进行分类展示。这里采用渐进分类方式:

1.jpg

1.jpg

总结

        以上就是本文的主要内容,本文重点讲解如何对一个包含区县信息的excel表格,再结合对应的空间shp数据,将普通的二维表格融合空间shp数据,实现二维数据的空间化,给决策者一种地理尺度上的分布认知,更好的做好经济服务支撑。文中将重点介绍如何使用Qgis软件进行两者的融合,最后基于融合的结果进行制图,得到一个直观的结果。


【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。