最近有小伙伴想要使用 Stata 绘制长三角 26 个城市的地图,所以我就制作了一份数据。
在使用本数据前请确保你已经学习过下面两个课程:
×
×
该套数据包含如下文件:
- csjcity_db.dta:长三角各城市属性数据;
- csjcity_coord.dta:底图矢量数据;
- csjcity_line_db.dta:边界线条属性数据;
- csjcity_line_coord.dta:边界线条矢量数据(还有比例尺和指北针的线条);
- csjcity_label.dta:各城市文本标签坐标数据(还有比例尺和指北针的文本);
- csjpolygon.dta:比例尺和指北针中黑色区域的矢量数据。
这里所说的长三角城市是指如下 26 个城市:上海市, 南京市, 南通市, 台州市, 合肥市, 嘉兴市, 宁波市, 安庆市, 宣城市, 常州市, 扬州市, 无锡市, 杭州市, 池州市, 泰州市, 湖州市, 滁州市, 盐城市, 绍兴市, 舟山市, 芜湖市, 苏州市, 金华市, 铜陵市, 镇江市, 马鞍山市。
绘制填充地图
use csjcity_db.dta, clear encode 市, gen(city) codebook city
grmap city using csjcity_coord.dta, id(ID) osize(vvthin ...) ocolor(white ...) clmethod(unique) fcolor("80 80 255" "206 61 50" "116 155 88" "240 230 133" "70 105 131" "186 99 56" "93 177 221" "128 34 104" "107 215 107" "213 149 167" "146 72 34" "131 123 141" "199 81 39" "213 143 92" "122 101 165" "228 175 105" "59 27 83" "205 222 183" "97 42 121" "174 31 99" "231 199 111" "90 101 94" "204 153 0" "153 204 0" "169 169 169" "204 153 0") leg(off) graphr(margin(medium)) line(data(csjcity_line_coord.dta) size(*0.5) pattern(solid) color(black)) polygon(data(csjpolygon) fcolor(black) osize(vvthin)) label(data(csjcity_label) x(X) y(Y) label(cname) length(20) size(*0.7)) ti("使用 Stata 绘制长三角城市地图") subti("绘制:微信公众号 RStata")
gr export pic1a.png, replace width(4800)
|

在地图上添加散点图
该地图底图的坐标系是“+proj=aea +lat_0=0 +lon_0=105 +lat_1=25 +lat_2=47 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs”,因此不能直接把经纬度添加上去,需要先进行坐标转换。这里以长三角区域内的工企分布为例:
use 长三角工企, clear geo2xy 纬度 经度, gen(lat lon) projection(albers, 6378137 298.257223563 25 47 0 105) replace save pointdata, replace
use csjcity_db.dta, clear grmap using csjcity_coord.dta, id(ID) osize(thin ...) ocolor(black ...) fcolor("white") leg(off) graphr(margin(medium)) line(data(csjcity_line_coord.dta) size(*0.5) pattern(solid) color(black)) polygon(data(csjpolygon) fcolor(black) osize(vvthin)) label(data(csjcity_label) x(X) y(Y) label(cname) length(20) size(*0.7)) point(data(pointdata) x(lon) y(lat) size(vtiny) fcolor(gray%30)) ti("长三角城市工企业地理分布") subti("绘制:微信公众号 RStata") caption("数据来源:工企数据库,使用高德地图地理编码接口解析经纬度", size(*0.7)) gr export pic2a.png, replace width(4800)
|

点击这里跳转到 RStata 短书平台获取附件:使用 Stata 绘制长三角地图城市地图(带指北针和比例尺)
评论