ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

QGIS处理数学建模中国地图与规划图:从配准到出图全攻略

QGIS处理数学建模中国地图与规划图:从配准到出图全攻略 简介面向数学建模、美赛及地理空间数据分析场景这套QGIS专用中国规划图与中国地图数据合集提供覆盖国家、省、市、县各级行政区划的多层级边界文件适合在QGIS中直接加载用于人口密度评估、交通网络优化、环境影响模拟、城市空间结构分析等常见建模任务。压缩包共包含2000个JSON格式文件约38.67MB文件按行政区划代码命名便于检索和批量导入。目前已有321人学习下载。这些数据可配合QGIS的缓冲区分析、空间查询等功能快速划定研究范围也能通过Python、GeoPandas等工具转换为GeoJSON或Shapefile进一步结合人工智能算法开展土地利用变化预测、城市扩张模式识别及政策影响评估是大数据环境下地理空间建模的重要基础。 数学建模的题目只要沾上“区域”“城市”“布局”这些字十有八九绕不开地图。我见过太多队伍模型算得漂漂亮亮到了写论文要配图的时候才发现手头没有一张能用的中国地图网上找的带水印截图放大之后边界全是锯齿更别说把模型结果画上去了。后来我改用QGIS处理这件事麻烦一下子少了很多开源免费、跨平台最关键的是能很方便地接入国内可用的在线地图源也能把中国各省市边界、规划图这些都整合到同一个项目里。这篇就把我在数学建模里用QGIS处理中国地图和规划图的完整套路写清楚包括图源配置、数据下载、坐标处理和出图适合准备数模比赛的学生也适合刚接触QGIS的朋友直接照着做。1. 数学建模要用的“图”先分清楚底图、规划图和专题图1.1 三类图各解决什么问题数学建模里需要的地图说白了就三种。第一种是底图也就是全国、省、市、县这四级行政区划边界它负责提供空间框架人口密度、经济数据、资源分布这些指标都要画在它上面第二种是规划图例如题目里给的国土空间规划总图、交通路网规划图、产业园区布局图这些图往往不是现成的矢量数据而是一张压缩过的JPG或PDF第三种是专题图也就是把你模型算出来的结果比如优化选址方案、覆盖范围、风险等级用不同颜色画到底图上。很多新手一上来就到处找“中国地图高清版”其实真正该找的是矢量边界数据和规划底图数据否则后边根本没法做空间统计。1.2 先认识Shapefile、GeoJSON和GeoPackage在QGIS里你接触到的数据格式主要就三种。Shapefile是最老牌的格式一个完整的图层由shp、dbf、shx等好几个文件组成拷贝的时候漏掉一个就打开报错GeoJSON是单文件在线下载特别方便浏览器里直接能打开QGIS里拖进去就能用GeoPackage是QGIS非常推荐的格式一个后缀名为gpkg的文件里可以装几十个图层适合把整个建模项目的地图数据打包到一起。坐标系方面你不需要成为测绘专家但至少要听说过WGS84EPSG:4326和Web墨卡托EPSG:3857。简单理解4326是经纬度坐标数值范围很小3857是给在线瓦片地图用的投影坐标数值是几百万米两者不能直接混用量距离。1.3 对数学建模来说“够用”的标准是什么如果按测绘行业的标准地图精度可以讲上三天三夜但数学建模不需要做到那个程度。我自己的判断标准就三条第一省级和地市级边界完整、拓扑干净县级边界不需要绝对精确但要能反映相对位置关系第二坐标系统一能跟题目给的经纬度数据直接匹配第三属性表里至少有一个稳定的标识字段比如行政区划代码或城市名称方便和模型结果做关联。只要满足这三条后面做任何叠加、筛选、统计都不会出大乱子。如果你还在纠结“下载不到1:1万的高精度数据怎么办”我的建议是先把这三条标准满足了再说建模题里考察的是分析逻辑不是制图精度。2. 把国内在线底图接进QGIS高德、天地图二选一2.1 高德XYZ tiles配置几分钟就能看到底图先解决“QGIS里没底图看着一片黑”的问题。QGIS左侧浏览器面板里能看到“XYZ Tiles”这个入口右键选择“新建连接”名称填“高德底图”URL填高德的公开瓦片地址https://webrd0{0-3}.is.autonavi.com/appmaptile?langzh_cnsize1scale1style8x{x}y{y}z{z}这里面的 {x}、{y}、{z} 是瓦片坐标QGIS会自动替换webrd0{0-3}是子域名轮换能加快加载速度style8表示路网底图scale1是常规分辨率。这套配置是我实测下来不需要申请Key、在国内网络环境下也能正常加载的方案。优点是省事缺点是它本质上只适合当视觉底图不能拿它做高精度的空间分析原因后面讲坐标系的时候再说。2.2 天地图和OpenStreetMap的备选方案如果你希望底图坐标系更规范、跟官方矢量数据叠加偏差更小我更推荐天地图。去天地图官网注册账号并申请一个浏览器端Key然后在XYZ Tiles里新建连接填这个地址https://t0.tianditu.gov.cn/DataServer?Tvec_wx{x}y{y}z{z}tk你的Key其中vec_w是矢量底图cva_w是中文注记层想带地名就再叠加一个注记图层。天地图基于CGCS2000地理坐标系组织用它配准规划图、叠加官方数据都更稳缺点是要注册和申请Key首次操作会比较烦。如果想完全零配置QGIS自带的OpenStreetMap底图也能直接拉出来用地址格式是https://tile.openstreetmap.org/{z}/{x}/{y}.png作为临时预览够用但部分网络环境下加载速度不算稳定。2.3 瓦片加载不出来时按这个顺序排查配置完底图一片白是新手最容易卡住的地方。我排查的顺序是这样的第一步把URL里的 {x}、{y}、{z} 手动替换成某个数字比如都填8放到浏览器里访问如果能出图说明图源本身没问题第二步回QGIS检查占位符是否写成了大写必须是小写的 {x}、{y}、{z}大写会导致加载失败第三步看是不是有安全软件或浏览器插件拦截了图源域名临时关掉再试。还有一个常见情况是QGIS弹出一个“Oops”错误窗口提示内容里带着 “could not load qgis details”这多半是上次崩溃残留的配置问题不用重装软件在“设置→用户配置文件”里重置一下配置就能恢复。提示QGIS的XYZ Tiles要求占位符为小写写成大写 {X}、{Y}、{Z} 会导致瓦片加载不出来。3. 中国地图和规划数据的获取路径GeoJSON、标准地图、配准勾画3.1 DataV.GeoAtlas直接下载GeoJSON获取中国行政区划矢量数据我最常用的渠道是阿里云DataV.GeoAtlas。打开这个页面后可以按省、市、区县逐级下载GeoJSON文件而且有直链比如全国边界可以这样拿https://geo.datav.aliyun.com/areas_v3/bound/100000_full.json想要某个省把后面的code换成对应的行政区划代码比如广东省是440000北京市是110000。下载后直接拖进QGIS系统会生成面要素属性表里带着省份名称、adcode、中心点等字段拿来和模型结果做关联非常方便。注意这类公开数据适合做省级以上宏观分析论文里务必注明数据来源和精度局限不要把它包装成官方精测成果。3.2 想要更规范去标准地图服务里找底图如果题目明确要求“以官方地图为准”或者你希望成果图带有审图号可以去国家地理信息公共服务平台以及相关标准地图服务页面下载标准地图。标准地图提供JPG和EPS等格式JPG版本可以直接插入论文附录当作底图引用但EPS格式QGIS不能直接打开通常需要转成PDF或SVG后再用矢量绘图软件处理。这里有个用QGIS的替代思路下载标准地图JPG后把它当作底图放进布局里做背景再让透明色的专题图盖在上面这样成果图既保留了官方边界表示又能展示模型结果。需要注意的是这类图一般只做展示不能直接拿来做面积量算。3.3 规划图配准后再勾画才能变成可分析数据规划题里最常见的痛点是题目给你一张国土空间规划总图上面画着居住用地、商业用地、生态保护区等色块但就是一张图没法统计面积。我的做法是用QGIS的“栅格→地理配准”功能。加载规划图后选取图上几个明显地标作为控制点比如高速公路出入口、河流拐弯处、铁路交叉点坐标可以从已经加载的矢量底图上读取也可以从可用的在线坐标拾取器获取。控制点选4到6个分布要均匀别集中在某个角落配准完图片会被拉伸到正确位置。之后新建一个面图层沿着规划色块边界手动勾画每个面在属性表里填上“用地类型”这样的分类字段就可以统计各类型面积和占比了。整个过程不难但控制点选不好图像会变形得厉害建议选图上四角和中心的显著地标交叉验证。4. 坐标系与投影叠加偏移和面积误差的根源以及解决办法4.1 常用坐标系速查表处理中国地图时绕不开坐标系选择。我把常用坐标系整理成一张表方便你对照坐标系名称EPSG代码坐标形态主要用途WGS844326经纬度GPS、GeoJSON、多数公开数据默认CGCS20004490经纬度官方测绘成果、天地图服务Web墨卡托3857投影坐标米在线瓦片底图显示Albers等积圆锥自定义中央经线投影坐标米全国范围面积、密度统计UTM分带32649/32650等投影坐标米省市范围距离、面积计算你可以简单记在线底图默认是3857下载的GeoJSON一般是4326而要算面积和距离必须先转成某个投影坐标系。这也是为什么很多人直接在经纬度底图上量面积量出来的数字总觉得不对劲。4.2 高德底图与矢量数据叠加偏移怎么办高德这类商业互联网底图加载起来方便但和从官方渠道下载的矢量数据叠加时会出现几十到几百米的偏移原因是公开互联网地图服务出于行业规范对坐标做了偏移处理。换句话说我建议你把它当作“看路用的参考底图”不要拿高德截图作为正式成果更不能在高德底图上直接测量距离和面积。那怎么办第一优先使用天地图底图它和CGCS2000数据的一致性更好第二所有建模分析都基于矢量数据完成底图只是视觉辅助第三成果图避免直接截取在线地图而是用矢量图层和布局工具自己画。网上流传的各种“坐标纠偏七参数”做法新手不要去折腾对数学建模来说性价比太低。4.3 面积和距离计算前先做一次重投影建模题里算“建成区面积”“生态保护区占比”“服务范围覆盖面积”这类指标时一定不要在WGS84经纬度下直接算。正确流程是先根据研究范围选定投影坐标系全国范围用Albers等积圆锥投影省市级范围用UTM对应分带然后在QGIS里右键图层选择“导出→要素另存为”在CRS设置里选好投影坐标代码导出一个新图层最后打开新图层的属性表用字段计算器新建一个面积字段表达式填area($geometry)结果单位就是平方米除以10000就是公顷。这个方法实测比任何在线面积工具都可靠也是我处理跨省规划题时的标准操作。5. 从数据到论文配图专题图制作与高清导出5.1 属性关联与专题图符号化当你把模型结果算出来后最想做的事情就是把一张“会说话”的地图放进论文。操作上分两步先做属性关联用“图层属性→连接”把模型计算结果Excel或CSV通过行政区划代码关联到地图属性表再做符号化右键图层选择“属性→符号化”按需选“分类”或“渐变”指定结果字段即可。配色上我建议分类控制在4到6档用浅到深的单色渐变比五颜六色的多色看起来专业得多。边界线可以单独设成白色或浅灰色线宽0.2到0.4否则色块接缝处会很脏影响观感。5.2 打印布局与高清导出论文里的地图不能用屏幕截图必须走QGIS的“新建打印布局”流程。在布局里插入“地图”控件框住你要展示的区域设置一个固定的比例尺比如1:500000再插入图例、指北针和比例条。图例会默认读取当前图层的符号多余的项可以通过“隐藏项目”去掉。导出时在布局面板里选择“导出为图片”格式选PNG分辨率设300dpi这样放进Word或PDF里才不会模糊。这里最容易踩的坑是忘记固定比例尺导致同一张图在不同电脑上打开后范围乱跳评审看起来很不专业。5.3 评审老师会盯着看的几个地图细节我参加建模答辩和评审交流时发现老师看地图的注意力非常集中主要看四个地方有没有规范图例、有没有比例尺和指北针、颜色语义是否符合直觉、字体是否统一。尤其是图例很多人导出地图后图例是乱码或者标题缺失这是最明显的扣分点。另外涉及全国范围的地图建议直接使用带审图号的标准地图做底图或者在全图范围表述上保持规范不要自己随手拼接截图。列一个自己的检查清单中文字体统一、标题字号16左右、图例字号9到10、地图边框和背景干净基本就能达到论文配图的要求。6. QGIS常见报错的排查顺序和我的数据整理习惯6.1 QGIS报错先查日志再重置配置QGIS偶尔会弹出红色的“Oops”错误窗口甚至直接退出。这个窗口看起来吓人但大多数不是数据坏了而是插件冲突或配置文件异常。我的处理顺序是固定的先在“视图→面板→消息日志”里查看最近报错跟哪个模块有关如果是某个插件导致的就去“插件→管理并安装插件”里把它禁用如果是加载大栅格时卡死重启QGIS后再试如果反复崩溃就重置用户配置文件QGIS会在下次启动时重建默认设置。按这个顺序能解决八成问题不要一上来就卸载重装那样反而会把好好的数据配置也一起清掉。6.2 把整份地图数据收进一个GeoPackage最后分享一个我觉得最有价值的工作习惯。拿到数模题后我会先把需要的地图范围确定下来然后用DataV下载行政边界从标准地图服务下载需要的底图把规划图配准勾画好全部导入QGIS整理到一个GeoPackage文件里统一设置坐标系再开始建模。这样做有三个好处一是数据集中不担心文件散落二是换题目、换赛区时可以直接复用这套底图三是所有图层的命名和坐标都一致后续做专题图不会反复踩坑。每次建模我都会在项目文件夹里保留这个gpkg和对应的QGIS工程文件到写论文的时候只是切换图层、调整样式整个出图流程会顺畅很多。本文还有配套的精品资源点击获取
返回列表