当前位置: 首页 > news >正文

DeepSeek智能时空数据分析(六):大模型NL2SQL绘制城市之间连线

序言:时空数据分析很有用,但是GIS/时空数据库技术门槛太高

时空数据分析在优化业务运营中至关重要,然而,三大挑战仍制约其发展:技术门槛高,需融合GIS理论、SQL开发与时空数据库等多领域知识;空间数据缺乏直观可视化工具,导致分析结果难以高效传达;现有产品成本高昂,限制了中小企业应用。

本系列文章将借助DeepSeek等大模型的能力,通过NL2SQL等免费/低成本 AI GIS智能体能力,帮助不熟悉SQL、GIS但是有空间数据分析需求的读者实现最常用的分析功能。

前序文章

《DeepSeek智能时空数据分析(一):筛选特定空间范围内的POI数据》

《DeepSeek智能时空数据分析(二):3秒对话式搞定“等时圈”绘制》

《DeepSeek智能时空数据分析(三):专业级地理数据可视化赏析-《杭州市国土空间总体规划(2021-2035年)》》

《DeepSeek智能时空数据分析(四):绘制行政区域并定制样式

《DeepSeek智能时空数据分析(五):基于区域人口数量绘制地图散点-大模型搜集数据NL2SQL加工数据》

参考地理数据可视化案例

前文所述《杭州市国土空间总体规划(2021-2035年)》(公开稿),有很多经典的行政区域绘制案例,例如:
在这里插入图片描述
这些经典行政区域绘制案例兼具科学性与美观性,本文将利用免费地理工具尝试进行复刻区域之间的连线。

上一篇文章《DeepSeek智能时空数据分析(五):基于区域人口数量绘制地图散点-大模型搜集数据NL2SQL加工数据》完成了行政区和区域人口散点的绘制,本文继续在此基础上继续增加区域之间的连接线:
在这里插入图片描述

第一步:接入连线数据

之前收集杭州市各个区的人口数量,可以作为连接线的输入数据使用:

区县名称,经度,纬度,人口数量
主城区,120.17,30.25,432.5
萧山区,120.27,30.17,216.4
余杭区,120.30,30.42,142.2
临平区,120.30,30.42,114.2
钱塘区,120.49,30.33,80.5
富阳区,119.96,30.05,86.1
临安区,119.72,30.23,65.6
桐庐县,119.67,29.80,46.1
淳安县,119.03,29.60,32.0
建德市,119.28,29.48,44.4

将这份csv数据导入DataV Atlas:

  • 添加人口数据到项目中,并打开“转为SQL查询”选项,后续需要借助deepseek输出nl2sql查询;
    在这里插入图片描述
  • 启用deepseek AI助手,输入连接线绘制提示词:

在以下列出的所有区县各自中心点绘制连线:富阳区-临安区、富阳区-主城区、富阳区-萧山区、临安区-主城区、临安区-临平区、主城区-萧山区、主城区-临平区、主城区-钱塘区、临平区-钱塘区、萧山区-钱塘区、淳安县-建德市、建德市-桐庐县、桐庐县-富阳区;

在这里插入图片描述
deepseek AI助手正确理解了需求,并输出完整sql;

-- 构建富阳区-临安区等指定区县中心点之间的连线
SELECT ST_MakeLine(t1.geom, t2.geom) AS geom -- 使用ST_MakeLine生成连线几何
FROM "public"."u0piif_hangzhou_population" t1, -- 表别名t1"public"."u0piif_hangzhou_population" t2 -- 表别名t2
WHERE -- 根据需求定义的区县对条件(t1."区县名称" = '富阳区' AND t2."区县名称" = '临安区') OR(t1."区县名称" = '富阳区' AND t2."区县名称" = '主城区') OR(t1."区县名称" = '富阳区' AND t2."区县名称" = '萧山区') OR(t1."区县名称" = '临安区' AND t2."区县名称" = '主城区') OR(t1."区县名称" = '临安区' AND t2."区县名称" = '临平区') OR(t1."区县名称" = '主城区' AND t2."区县名称" = '萧山区') OR(t1."区县名称" = '主城区' AND t2."区县名称" = '临平区') OR(t1."区县名称" = '主城区' AND t2."区县名称" = '钱塘区') OR(t1."区县名称" = '临平区' AND t2."区县名称" = '钱塘区') OR(t1."区县名称" = '萧山区' AND t2."区县名称" = '钱塘区') OR(t1."区县名称" = '淳安县' AND t2."区县名称" = '建德市') OR(t1."区县名称" = '建德市' AND t2."区县名称" = '桐庐县') OR(t1."区县名称" = '桐庐县' AND t2."区县名称" = '富阳区');

执行sql之后,区域之间的连线已经出具雏形:
在这里插入图片描述

第二步:设置连线样式

参考案例的样式,打开DataV Atlas连线图层,进行样式设置:
在这里插入图片描述
设置完毕之后,最终效果接近参考案例了。
在这里插入图片描述

本文所用地理可视化分析工具

本文用到的个空间分析工具对学习者如高校学生都是免费的,可以自行获取学习使用;个人开发者可以选择低成本版本或者看有没有免费试用。

  • 行政区边界&地理数据绘制免费工具:GeoAtlas
  • 大模型NL2SQL时空数据分析工具:DataV Atlas

两个工具可以参考之前介绍文章免费获取;https://blog.csdn.net/guoweish/article/details/146253025?spm=1011.2124.3001.6209

其他替代性开源免费工具也可以用QGIS等实现,专业性强但是上手难度较高。

http://www.xdnf.cn/news/189451.html

相关文章:

  • 云原生开发革命:iVX 如何实现 “资源即插即用” 的弹性架构?
  • 《Masked Autoencoders Are Scalable Vision Learners》---CV版的BERT
  • 微信小程序开发中关于首屏加载、本地数据持久化的思考
  • 旋转位置编码RoPE
  • TypeScript中的函数类型定义与类型约束
  • 有哪些和PPT自动生成有关的MCP项目?
  • 详解RabbitMQ工作模式之简单模式
  • Vue 对话框出现时,为什么滚动鼠标还是能滚动底层元素
  • Docker 常用命令(涵盖多个方面)
  • 数据结构第七章(一)-顺序查找和折半查找
  • CMCC RAX3000M使用Tftpd刷写OpenWrt固件的救砖方法
  • Python实现SSE流式推送
  • AutoGen 框架深度解析:构建多智能体协作的事件驱动架构
  • SQL 易混易错知识点笔记1(drop,role,%,localhost)
  • Flinkcdc 实现 MySQL 写入 Doris
  • 导入使用 Blender 创建的 glTF/glb 格式的 3D 模型
  • 从千兆到40G:飞速(FS)助力制造企业构建高可靠智能生产网络
  • Ocelot的应用案例
  • 整合性安全总结(ISS)早期规划
  • 【零基础入门】ASP.NET Core快速搭建第一个Web应用
  • 科技助力防灾减灾:卫星电话走进应急救援队伍
  • [RoarCTF 2019]Easy Calc 详解
  • node.js 实战——mongoDB
  • Milvus(9):字符串字段、数字字段
  • 递归、搜索和回溯算法《递归》
  • LVDS系列10:Xilinx 7系可编程输入延迟(三)
  • 如何删除此电脑上的迅雷下载、WPS云盘、百度网盘
  • 多实例情况下,实例名较长dbca失败
  • P9904 [COCI 2023/2024 #1] Labirint 题解
  • codeforcesB. Alice‘s Adventures in Permuting