⽤Matlab绘制中国⾏政区划地图
matlab 下载步骤1:从⽹站下载数据⽂件。
选择 Country: China,再选择 Shapefile,会下载得到⼀个名为 “gadm36_CHN_shp.zip” 的压缩⽂件。
步骤2:解压数据⽂件。
解压得到⼀系列⽂件,其中 *.shp 是 Matlab 绘图⽤到的。
其中,gadm36_CHN_0.shp、gadm36_CHN_1.shp、gadm36_CHN_2.shp、gadm36_CHN_3.shp,分别表⽰国、省、市、县四级⾏政区划的详细经纬度界线。
步骤3:加载数据⽂件。
使⽤ shaperead 函数可以直接加载 Shapefile 数据⽂件。
ShapeFile = 'D:\data\gadm36_CHN_shp\gadm36_CHN_0.shp';
MapData = shaperead(ShapeFile);
MapData.Geometry
MapData.BoundingBoc
MapData.Lon
MapData.Lat
MapData.GID_0
MapData.NAME_0
步骤 App:台湾省地图缺失问题的解决
步骤1-2加载的 <China> 地图,缺少了台湾省,并不是完整的中国!
需要重新执⾏步骤1⾄步骤2,选择“Taiwan”,下载得到台湾省的省、市、县、镇四级⾏政区划地图。
⽽且,台湾省的地图级别设置不对,在步骤3合并CHN 和 TWN 的地图时,需要调整对应的级别,使它的“国”属性消失,才能正常显⽰。
这⾥给出⼀个中国的省级⾏政区划绘制的⽰例:
ShapeFile = 'D:\data\gadm36_CHN_shp\gadm36_CHN_1.shp'; % CHN的省界划分
ShapeFile_TWN = 'D:\data\gadm36_TWN_shp\gadm36_TWN_0.shp'; % TWN 的省界划分
MapData = shaperead(ShapeFile);
MapData_TWN = shaperead(ShapeFile_TWN);
hold on;
plot(MapData.Lon, MapData.Lat, '.')
plot(MapData_TWN.Lon, MapData_TWN.Lat, '.')