首页 分享 【小花经济学术】如何用Stata进行地图数据可视化

【小花经济学术】如何用Stata进行地图数据可视化

来源:花匠小妙招 时间:2025-01-12 03:24


中国县级地图(Stata制作)

一、引言

在经济学科学研究发展迅猛的时代背景下,地图数据可视化在经济学研究过程和研究成果展示中的重要性是不言而喻的了。Stata 是经济学科研人员使用最多的软件之一,它简单的操作和较小的内存占用吸引了大量的用户。习惯 Stata 软件的粉丝级用户总是希望用 Stata 来做更多的数据处理工作,小编作为 Stata 的爱好者之一,同样有挖掘 Stata 在数据处理中无所不能的、无所不包的美好愿望。今天,给大家带来的是使用Stata制作地图。

已经存在有不少的 Stata 作图命令,但是往往由于Stata 地图底图数据的缺失,使 Stata 制作地图的功能受到了很大的限制。今天的推送,能让你在Stata上完成 GIS 软件上制作成的任何地图(小花之前也推送过 如何用 ArcGIS 软件进行地图数据可视化)。

而且在一般的地图数据可视化上,小编认为 Stata 能做到比一般的 GIS 软件(e.g. ArcGIS)更简单。 下面就来开始制作你的 Stata 地图吧。

二、数据准备

一、坐标数据准备

其实我们可以很形象的把地图中的边界想象成一个一个坐标点连接而成的线条。那么关键在于我们如何获得这些构成边界的点坐标呢?地理信息学科已经为我们提供了大量的 GIS 数据了,我们可以找到各个地区的 shapefile 和 dbf 文件。(点击 “阅读原文” 获取)

在 Stata 中已经有命令 shp2dta 帮助我们将shapefile 和 dbf 文件转成 stata 所需的地图坐标数据。比如,笔者有整个世界城市级别的 GIS 数据。


  shp2dta --  Converts shape boundary files to Stata datasets

clear

set more off 

cd c:usersadmindesktopStata_map

ssc install shp2dta, replace

help shp2dta

shp2dta using world_city_level, database(world_city_level_data) coordinates(world_city_level_co)

这样你就可以看到两个 dta 文件,world_city_level_data.dta 和 world_city_level_co.dta。其中,后面这个dta文件是坐标文件,包含_ID,  _Y,  _X。

三、画图

use world_city_level_co.dta , clear

 scatter _Y _X ,msize(vtiny)


同理,我们可以将中国县级的 shapefile 转成 stata 文件。

cd c:usersadmindesktopStata_map中国县级数据

shp2dta using china_county, database(china_county_data) coordinates(china_county_co)

use china_county_co.dta

scatter _Y _X ,msize(vtiny)


把 shapefile 和 dbf 中包含的 GIS 数据库与 坐标文件 china_county_co.dta 合并

merge m:m _ID using china_county_data.dta

/*  画出广东省的地图  */

scatter _Y _X if NAME_1=="Guangdong",msize(vtiny)


spmap face using Guangdong.dta , id(_ID) title("Stata展示暨南大学各校区位置图") point(data("Jinan_Point.dta") xcoord(yc) ycoord(xc) fcolor(black) size(Large) legenda(off) legcount leglabel(暨南大学各校区))  label(label(po_name) xcoord(yc) ycoord(xc)) fcolor(Oranges) legenda(off)

/*  画出暨南大学各校区的点图  */


/*  画出广州市的地图  */

scatter _Y _X if NAME_2=="Guangzhou",msize(small)


四、展示你的数据

假设,我们现在需要展示每个县的 showdata 变量的值,可以通过 spmap 命令实现(需安装)。

use china_county_data.dta ,clear

gen showdata = rnormal()

format showdata %9.3g

spmap showdata using "CHN_coordinates.dta", id(_ID) fcolor(Oranges)


这样我们就把 showdata 数据在地图上展示出来了。

其他地图例子

1、中国大陆水系图:


2、大陆主要水域图


3、中国主要铁路线图


相关知识

如何用Stata完成(shui)一篇经济学论文(六):合并
使用Matlab对HDF5卫星图像数据进行可视化及地表温度分析
大屏设计系列之四:大数据可视化设计,故事+数据+设计 =可视化
基于Python的全国主要城市天气数据可视化大屏系统
鸢尾花数据集如何可视化
基于python的transbigdata实现出租车轨迹数据分析与可视化
河流水质水位实时监控大屏~数据可视化大屏
数据可视化的通用逻辑
为什么要花大力气做可视化数据分析?
鸢尾花数据集降维可视化

网址: 【小花经济学术】如何用Stata进行地图数据可视化 https://www.huajiangbk.com/newsview1548646.html

所属分类:花卉
上一篇: 阳台种植舌尖上的玫瑰,不仅送爱人
下一篇: 数据地图

推荐分享