天地图全国幼儿园数据下载与处理分析

概述

在看天地图服务资源的时候看到有个“幼儿园”的数据,好奇点开看了下,下载下来数据差看了下,数据质量还不错。本篇文章给大家分享一下这个数据的处理以及一些简单的统计分析结果。

数据下载

通过地址https://service.tianditu.gov.cn/#/Detail?mc=幼儿园&id=7495获取数据的信息与下载地址,如下图所示。点击服务地址下载数据。

image.png

数据处理

1. 转换为geojson

上述地址返回的是json格式的数据,如下图所示。

image.png

通过js将其转为geojson。转换代码如下:

class Geojson {constructor(features = []) {this.type = "FeatureCollection";this.features = features;}
}fetch("./yry.json").then((res) => res.json()).then((res) => {res = res.data.results.map(({ gbcode, geojson, name }) => {geojson.properties = { gbcode, name }geojson.geometry = {type: "Point",coordinates: geojson.geometry.coordinates[0]}return geojson;});const json = new Geojson(res)console.log(JSON.stringify(json))});

2. 坐标转换

数据转换后用QGIS打开,并叠加高德地图作为底图,发现数据有些偏移,借助Geohey插件将坐标转换为火星坐标系。

image.png

转换前后位置示意比较图,转换后蓝色的点就跟高德地图的位置就一致了。

image.png

3. 数据处理

将转换后的数据导入到postgis数据库中,并添加provcity两个字段,跟城市面数据进行空间关联,并赋值。

update base_youeryuan set prov = (select a.province from base_city a where st_intersects(a.geom, base_youeryuan.geom)  limit 1
), city = (select a.name from base_city a where st_intersects(a.geom, base_youeryuan.geom)  limit 1
) where 1=1;

4. 数据分析

先通过省做一个分组统计,统计sql如下:

-- 进行分省统计
select prov, count(1) as num from base_youeryuan 
where prov is not null 
group by prov 
order by num desc; 

统计后的结果如下图,不难看出:1.人后大省的幼儿园比较多;2.幼儿园比较多的省份小朋友比较多,新生儿出生率对应的也会比较高。3.北上的人口比较多,但是幼儿园比较少,说明小孩子比较少,大家生孩子的意愿或积极性明显很低。
image.png

根据省分析完了我们在根据市做一个分组统计,由于市比较多,我们只取了前20作为结果,统计sql如下:

select city, count(1) as num from base_youeryuan 
where city is not null 
group by city
order by num desc;
limit 20;

统计后结果如下图。做个简单的分析:1.重庆依然成为了人口、新生儿第一的城市;2.幼儿园的数量代表着小孩子的多少,在前二十的城市里面,广东有三个城市进入,分别是广州、深圳、湛江,也从另外一个侧面说明了南方人生孩子的意愿比较强。
image.png

**申明:**文章中的的数据和分析仅供教学学习,不代表实际的情况与分析结论。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/745004.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式方向还有希望吗?

我刚开始学习,也不知道我定位的是单片机工程师,嵌入式工程师职位的。 我只知道电子工程师,这个职位其实偏硬件,很多岗位需求是硬件设计,PCB设计,还要懂焊接、各种仪器仪表使用,还有些需要懂单片…

Git提交代码进入coding

安装Git后建一个文件在文件里右键点击Git Bash使用命令配置用户名和邮箱git config --global user.name "你的用户名"和git config --global user.email "你的邮箱"命令git init来初始化,自动将当前仓库设置为master创建一个项目(一…

C#操作像素替换图片中的指定颜色

待处理的图片,其特征是包含有限数量颜色,不同的颜色相互交叉使用,相同颜色并未完全连贯,需要将图片中的指定颜色替换为另一颜色。虽然很多图片处理工具都支持类似操作,最后还是自己动手编写简单的处理程序。   程序的…

4种小众的能力,帮你更好地适应未来

新年伊始,又是一个全新的开始。 未来的社会究竟需要什么样的能力?这已经是一个很老的话题,已经有许许多多讨论了。但这其中,可能有一些是容易被人忽略的,或者不容易被注意到的。 我想跟你一起分享,我对这个…

Live800:企业如何与客户建立长期、稳定关系,实现双赢

在当今的商业环境中,企业不仅需要吸引新客户,更需要与现有客户建立长期、稳定的关系。这样的关系可以带来持续的收入,提高企业的利润性。然而,如何建立和维护这样的关系呢?文章将从三个方面进行深入探讨:提…

Milvus向量数据库检索

官方文档:https://milvus.io/docs/search.md   本节介绍如何使用 Milvus 搜索实体。   Milvus 中的向量相似度搜索会计算查询向量与具有指定相似度度量的集合中的向量之间的距离,并返回最相似的结果。您可以通过指定过滤标量字段或主键字段的布尔表达…

Javaweb-MyBatis

一、概念 MyBatis是一款优秀的持久层框架,用于简化JDBC开发 MyBatis本是Apache的一个开源项目iBatis,2010年这个项目由apache software found迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github 持久层 负责将数据到保存到数…

科技云报道:两会热议的数据要素,如何拥抱新技术?

科技云报道原创。 今年全国两会上,“数字经济”再次成为的热点话题。 2024年政府工作报告提到:要健全数据基础制度,大力推动数据开发开放和流通使用;适度超前建设数字基础设施,加快形成全国一体化算力体系&#xff1…

面试经典-11-接雨水

题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是由数组 [0,1,0,2,1,0,1,3,2,…

2024自动化测试的痛点与发展趋势!

前几天在技术交流群里,大家讨论了很多关于自动化测试落地面临的痛点和如何创造价值的话题,颇有感触。 自动化测试这个话题,从出现到在国内大规模开展实践,有很长的一段时间了。早期,大家对自动化测试的理解和使用目的…

java:学生管理系统

一、介绍 该功能是实现学生信息的添加,查看,修改,删除以及退出系统的简单操作。 二、代码实现 public class Student {private String sid;//学号private String name;//姓名private String age;//年龄private String address;//地址publi…

通过NFS 实现windows共享linux目录

一、配置WIndows 1.进入程序和功能 2.勾选NFS服务,安装客户端 二、安装NFS Service 在ubuntu 1.查看apt源是否存在nfs服务端安装包 sudo apt-cache madison nfs-kernel-server 2. 安装nfs-kernel-server sudo apt install nfs-kernel-server 3.建立共享目录&…

Compose UI 之 BottomAppBar 底部应用栏

BottomAppBar 底部应用栏 BottomAppBar 是一个在 Jetpack Compose 中用于创建底部应用栏的组件。它提供了一个高度可定制且功能丰富的底部导航解决方案。 它的使用方式与 TopAppBar 类似。下面的图是 BottomAppBar 的基本样式图。 常见使用场景 BottomAppBar 在应用中常用于…

人工智能课题、模型源码

人工智能研究生毕业~深度学习、计算机视觉、时间序列预测(LSTM、GRU、informer系列)、python、人工智能项目代做和指导,各种opencv图像处理、图像分类模型(vgg、resnet、mobilenet、efficientnet等)、人脸检…

ESD静电测试闸机-筑成电子厂防静电管理的第一道防线

ESD静电测试闸机是一种用于防止静电对电子产品和设备造成损害的重要设备。在电子厂等对静电敏感的场所,ESD静电测试闸机扮演着防静电管理的第一道防线的角色,确保生产环境的安全和产品质量的稳定。本文将从静电监测和消除、刷卡/身份证认证、指纹/人脸识…

Tengine编译安装

首先下载源码 可以去官网:The Tengine Web Server 当前最新版地址:https://tengine.taobao.org/download/tengine-3.1.0.tar.gz 安装编译依赖 yum -y install gcc pcre-devel zlib-devel openssl-devel libxml2-devel \libxslt-devel gd-devel GeoIP…

一款前端开发工具Hbuilder

背景:最近日在接触前同事留下的一个VUE项目(只有前端代码,后台服务压根没写真不知道以前是怎么糊弄过去的)时,发现一款可以快速开发前端的软件;今日分享一下。 当我打开项目时发现,有个app.vue…

【Cookie和Session辨析】

1.cookie 1.1什么是cookie Cookie 是一种在客户端(通常是 Web 浏览器)和服务器之间传递信息的机制,用于在客户端存储少量的数据。它由服务器发送到客户端浏览器,然后浏览器会将这些数据存储在本地,并在后续的请求中将…

解决安装PyMuPDF(也被称为fitz库)的问题(可成功安装且使用)

解决安装PyMuPDF(也被称为fitz库)的问题(可成功安装且使用) 安装方法:一些安装时报错的原因解析:报错1:报错2:报错3-无效的分发包警告:报错4: 使用实例 在使用…

电子学会 2023.03 Python 3级(yanpuxin)

十进制数111转换成二进制数是? 1、十进制数111转换成二进制数是?( ) A 111 B 1111011 C 101111 D 1101111 正确答案:D 试题解析: 十进制转二进制,采用除二倒取余数,直到商为0为止。 2、某班有36人…