自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Non-existent987

没有987

  • 博客(30)
  • 收藏
  • 关注

原创 Python绘制扇形图,由表格数据生成方向性覆盖范围图层tg.add_sectors

add_sectors是Python中用于创建扇形/扇弧形地理区域的功能函数,支持从中心点生成方向性覆盖范围。该函数可处理WGS84坐标转换,支持实心/环形扇形创建,返回GeoDataFrame格式数据。通过指定经度、纬度、方位角、距离和张角等参数,可应用于雷达扫描、信号覆盖、监控视野等多种场景。函数自动验证数据有效性,支持固定参数或动态列值输入,为地理空间分析提供便捷工具。

2025-12-27 00:17:52 494

原创 Flutter + FastAPI 30天速成计划自用并实践-第10天-组件化开发实践

本文介绍了Flutter组件化开发的实践,重点讲解了StatelessWidget和StatefulWidget的区别与应用。文章详细阐述了组件化开发的核心理念(单一职责、可复用性、可组合性)及其优势,并分析了两种组件的生命周期。通过两个实际案例(文章卡片组件ArticleCard和可展开卡片ExpandableArticleCard)展示了如何创建可复用组件,包括参数传递、状态管理和交互实现。最后提供了将这些自定义组件集成到主应用中的代码示例,帮助开发者掌握Flutter组件化开发的关键技能。

2025-12-14 00:17:38 420

原创 geopandas快速计算地理数据面积增加一列,一行代码搞定

本文介绍了使用tablegis库为geopandas数据框添加面积列的方法。通过add_area()函数可以自动计算图形面积并添加指定列名,支持自动识别坐标系(如中国区UTM Zone 49/50)、自定义坐标系(如EPSG:32650)和字段类型。示例演示了两种使用场景:自动选择坐标系和手动指定坐标系,输出结果显示两种方式计算面积分别为1,076,905和1,078,867平方米。该功能适用于地理坐标(米制单位)的面积计算需求。

2025-12-08 23:02:47 112

原创 Flutter + FastAPI 30天速成计划自用并实践-第9天

本文介绍了Dart语言基础和Flutter布局系统的学习内容。Dart部分涵盖变量声明、数据类型、函数定义和类对象等核心概念。Flutter布局重点讲解了Container、Row、Column等核心Widget的使用方法,以及Widget树的构建原理。文章提供了Dart基础语法示例代码,包括变量、函数和类的定义,并演示了如何创建一个简单的左右布局Flutter应用,包含左侧导航栏和右侧内容区域的实现。通过修改main.dart文件,展示了MaterialApp、Scaffold、AppBar等组件的使用方

2025-12-08 21:56:48 531

原创 Flutter + FastAPI 30天速成计划自用并实践-第8天-快速简单安装flutter并运行一个项目

本文介绍了Flutter环境搭建与创建第一个应用的详细步骤。主要内容包括:1)安装Dart SDK和Flutter SDK的详细过程,包括镜像站点配置;2)环境变量设置和安装验证方法;3)通过flutter create命令创建项目,并运行计数器示例应用;4)常见网络问题的解决方法。文章提供了完整的命令行操作指南,帮助开发者快速搭建Flutter开发环境并实现第一个"Hello World"应用。重点解决了国内开发者可能遇到的网络连接问题,确保环境配置顺利完成。

2025-12-06 20:14:27 1114

原创 Flutter + FastAPI 30天速成计划自用并实践-第7天

摘要 本文介绍了Day 7学习计划中开发的内容导入脚本功能。通过创建advanced_import.py脚本,实现了将Markdown文件自动导入数据库的功能。该脚本能够解析Markdown文件标题,支持清除现有数据选项,并通过SQLModel与数据库交互。测试表明,导入后的内容可通过FastAPI接口访问(如http://127.0.0.1:8000/api/v1/articles/),成功返回JSON格式的文章数据。这为后续Flutter学习打下了后端基础。

2025-12-05 22:35:48 291

原创 python运行完成后发出声音,狗叫声,音频播放

本文介绍了一个通过Python程序在运行结束后播放狗叫声的方法。主要步骤包括:1) 将音频文件转换为Base64字符串并存储;2) 创建临时.wav文件;3) 使用winsound模块播放音频。文中提供了音频转换的代码示例,并展示了如何在程序结束时调用播放函数。该方法适用于需要在程序完成时添加声音提示的场景,但需要注意跨平台兼容性问题。

2025-12-04 15:30:03 216

原创 Flutter + FastAPI 30天速成计划自用并实践-第6天

摘要: 本文介绍了后端项目结构优化的详细方案,采用模块化分层架构提升代码质量。主要内容包括:1) 推荐标准项目结构,划分models、schemas、crud、api等模块;2) 实现CRUD模块化,分离业务逻辑与路由;3) 提供完整重构示例代码,涵盖主程序入口、数据库配置、数据模型定义、API路由等核心组件。优化后的结构提高了代码可维护性和扩展性,为前后端对接做好准备,符合现代Web开发最佳实践。

2025-12-02 23:51:21 295

原创 Flutter + FastAPI 30天速成计划自用并实践-第5天

本文介绍了FastAPI项目中实现Markdown支持和CORS配置的详细方法。主要内容包括:1) Markdown语法介绍及其在文章内容中的应用;2) CORS跨域问题的产生原因及FastAPI的CORSMiddleware解决方案;3) API测试工具Swagger UI和Postman的使用。代码实现部分展示了完整的项目结构,包含main.py、schemas.py和database.py三个核心文件,实现了文章的CRUD操作,并通过markdown库将Markdown内容转换为HTML响应。项目还配

2025-12-01 23:35:02 429

原创 Flutter + FastAPI 30天速成计划自用并实践-第4天

本文介绍了使用FastAPI实现完整CRUD操作的第四天学习计划。主要内容包括:1) RESTful API设计原则,如标准HTTP方法使用和状态码规范;2) FastAPI依赖注入系统的作用和常见应用场景;3) 数据库会话管理的重要性。通过database.py、schemas.py和main.py三个核心文件实现文章增删改查功能,相比Day3实现了关注点分离,使用不同模型处理数据库操作和API验证,提供更精确的控制和更好的API设计。练习代码展示了完整的文章管理接口实现。

2025-12-01 00:46:24 648

原创 Flutter + FastAPI 30天速成计划自用并实践-第3天

本文记录了Day 3学习SQLite和SQLModel数据库集成的过程。主要内容包括:1) 学习SQLModel的基本用法,它结合了SQLAlchemy和Pydantic的优点;2) 创建SQLite数据库并定义Article表结构;3) 实现增删改查API接口,包括POST创建、GET查询、PUT更新和DELETE删除文章。通过实践创建了database.py定义数据模型和main.py实现API接口,最终成功测试了所有CRUD操作。作者表示虽然实现了功能,但对原理理解还不够深入,学习过程略显仓促。

2025-11-29 23:43:09 364

原创 Flutter + FastAPI 30天速成计划自用并实践-第2天

摘要:本文记录了学习FastAPI第二天关于Pydantic数据模型的内容。主要包括:1) Pydantic核心概念,自动完成数据校验和文档生成;2) 定义Article模型并测试接口功能;3) 探索可选字段实现方式,发现需通过Optional[str] = None形式定义,并需从typing导入Optional。实践过程中遇到接口未定义和Optional未导入等问题,均通过调试解决。通过测试验证了数据类型校验机制的有效性。(149字)

2025-11-27 17:31:31 744

原创 Flutter + FastAPI 30天速成计划自用并实践-第1天

摘要:本文记录了FastAPI框架的初体验过程。首先安装Python3.10及FastAPI、Uvicorn,然后编写了一个包含根路由和带参数路由的简单API程序。运行过程中遇到模块导入错误(文件名不匹配),修正后成功运行。测试了默认参数(null)和带参数请求的响应,发现查询参数需要通过"?q=value"方式传递。最终完成了环境搭建和基础API开发,耗时约2小时。

2025-11-26 23:59:24 377

原创 Flutter + FastAPI 30天速成计划自用并实践

摘要:本文提供了一个30天速成Flutter+FastAPI的极简学习方案,适用于工作之余的学习者。采用"以终为始"策略,聚焦核心功能开发,剔除动画、微服务等非必要内容。每周重点:第1周完成FastAPI后端开发,第2周实现Flutter前端基础,第3周整合系统并填充教学内容,第4周完成Docker部署。建议使用AI辅助编程,采用费曼学习法边学边教,最终上线一个教学网站。方案强调实操优先,通过开发实际项目来掌握技术,30天后可获得完整作品和实际开发能力。

2025-11-26 23:57:30 564

原创 表格经纬度聚类汇聚按照规定的距离区域融合python和tablegis

本文介绍了一种基于地理坐标点的汇聚方法,通过对1000米范围内的经纬度点进行区域划分,为每个区域分配唯一ID并生成几何边界。示例展示了包含4个坐标点的原始数据,经过处理后被分为两个区域(id_0和id_1),每个区域包含两个相邻点。文中提供了Python实现代码,使用tablegis库的add_buffer_groupbyid函数,支持是否返回几何图形的两种处理方式。该方法适用于地理空间数据聚合分析,便于对邻近点进行区域化管理和可视化呈现。

2025-10-30 21:25:03 345

原创 表格经纬度生成坐标转点:python操作用tablegis轻松搞定

摘要:本文演示了如何将包含经纬度数据的表格转换为地理数据框架(gdf)。使用Python的tablegis库(tg)的add_points()函数,将经纬度列转换为POINT类型的geometry列。安装可通过"pip install tablegis"完成。最终生成的数据框架包含城市、经纬度及对应点几何对象,为后续地理空间分析提供了基础数据格式。

2025-10-30 21:13:33 129

原创 表格df生成buffer支持固定距离或者读取表格距离列,支持经纬度异常告警python

本文演示了使用Python为地理坐标数据创建缓冲区(buffer)的操作方法。通过pandas和tablegis库,对包含经纬度坐标的数据框生成指定范围的缓冲区。代码提供了两种方式:固定100米缓冲区和使用数据框中的buffer_size列定义可变范围。操作过程中会检测经纬度空值或超出有效范围的情况并报错提示。最终结果显示,两种方法都成功生成了多边形(POLYGON)几何图形,并可通过to_file方法导出为shp格式文件。该方法适用于地理空间数据分析和可视化场景。

2025-10-29 21:43:04 314

原创 表格中经纬度转换支持高德谷歌百度平面坐标相互转换 python实现

本文介绍了一个基于Python的坐标转换工具tablegis,支持WGS84、Web Mercator、CGCS2000、GCJ02和BD09等坐标系之间的相互转换。通过pip安装后,用户只需输入包含经纬度的表格,指定源坐标系和目标坐标系,即可输出转换后的坐标数据。示例代码演示了如何将WGS84坐标转换为Web Mercator坐标,结果表格会自动添加新列存储转换值。该工具适用于地理信息处理、地图开发等场景,源代码已在GitHub开源。

2025-10-21 18:41:03 238

原创 双表,计算最近点的方法支持1-n个最近点并自动添加最近点的信息和距离pandas df tablegis

两个表计算最近点位,自动添加找到的点位信息和距离,速度极快

2025-10-20 10:29:09 394

原创 单表-计算一个表的最近点,求自身最近点的方法df,pandas ,geopandas

单表,计算一个表的最近点,求自身最近点的方法df,pandas ,geopandas

2025-10-20 10:24:02 303

原创 postgis借助python导入图层

方法:使用借助python导入到postgresql或者postgregis导入包import geopandas as gpdimport pandas as pdfrom sqlalchemy import create_engine读取图层并导入postgis# 连接postgresqlengine = create_engine("postgres://postgres:root@localhost:5432/postgis_31_sample") # 导入图层至p

2021-04-08 15:03:15 508

原创 python geopandas矢量图层交集、差分、合并的方法

解决问题:1、一个gdf图层中去掉另一个gdf图层相交的部分2、一个gdf图层和另个gdf图层相交的部分3、一个gdf图层合并为一行数据实现方法:1、一个gdf图层中去掉另一个gdf图层相交的部分import geopandas as gpd# 导入数据1gdf_left = gpd.read_file('d:/map_left.shp')# 导入数据2gdf_right = gpd.read_file('d:/map_right.shp')# 计算数据1中去掉数据.

2021-04-07 22:39:14 9818 5

原创 geopandas 导出shp文件的一种方法,解决报编码错误(中文列名的情况下)

解决问题:geopandas 导出shp文件报编码错误(中文标题的情况下),改成utf-8和gbk都不行,取代用pyhsp导出 def to_shp(gdf_data, out_path='d:/polygon.shp', encoding='gbk', geometry_name='geometry'): ''' 功能:将geopandas导入的gdf导出为sh.

2021-03-07 00:33:45 5669 6

原创 2021年Anaconda版本对应python版本

Anaconda版本 python版本 Anaconda 2.0.1 Python version 2.6 Anaconda 2.0.1 Python version 2.7 Anaconda 2.0.1 Python version 3.3 Anaconda 2.0.1 Python version 3.4 Anaconda 2.1.0 Python version 2.6 Anaconda 2.1.0 Pyt..

2021-02-28 16:07:53 11664

原创 python pandas两行带分隔符号的列,转换成多行

两行带分隔符号的列,转换成多行地市 id 挂高 方位角 咸宁 id_1 32\32\22\32 50\150\300 咸宁 id_2 25\25\25 70\230\350 咸宁 id_3 41\41\41 5\110\200 咸宁 id_4 35\35\35 90\170\270 咸宁 id_5 28\28\28 55\200\330 咸宁 id_6 30\2

2021-02-24 18:36:46 415

原创 pandas的常用语法以及一些例子小样

目录使用数据如下:1、dataframe搜索一列包含某个字符使用数据如下:import pandas as pddata = {'序号':[1, 2, 3, 4, 5, 6], '城市': ['北京', '北京', '天津市', '天津市', '唐山市', '唐山市'], '区县': ['密云县', '延庆县', '静海县', '蓟县', '乐亭县', '迁西县']}df = pd.DataFrame(data) 序号 城市 区县

2020-12-03 14:48:11 252

原创 python合并多个excel表格文件为一个或者放到不同的sheet中

场景:许多excel文件格式和内容的标题都一样,需要将这些表格合并到一起,有5个表,每个表10行的话,合并后就是50行的数据方案1:文件放到一个目录中遍历所有文件然后进行数据合并目录 d:/表格存放/ 下存放了5个excel文件要求输出到d盘根目录下面 ‘合并后表格.xlsx’import osimport pandas as pd#定义一个函数读取文件路径def file_name_paths(path='D:/UP', find=None, case_sensitive=Fal

2020-11-16 23:22:10 5763 1

原创 pandas表格-拆分Excel的单元格为多行,将多行数据汇聚到一行用分隔符号分开

表A数据如下:名字 心情 地址 财富情况 年龄 单身情况 小明 惊奇 中国 穷 28 单身 小红 高兴 中国 富 23 单身 张三 喜悦 中国 穷 32 单身 张三 怜悯 中国 穷 32 单身 张三 哀愁 中国 穷 32 单身 李四 畏惧 中国 穷 35 单身 李四

2020-11-16 22:44:30 663

原创 python读取kml和kmz格式的google谷歌地球文件

方案1,使用geotable包读取kml和kmz缺点(读取的数据中只保留了注释、多边形和id的信息,table标注信息没有读出来)首先安装geotablepip install geotable然后在程序中运行import geotablet = geotable.load('d:/北京.kmz') #kml同样可以t就相当于一个pandas的DataFrame类似的表。方案2,使用kml2geojson包读取kml格式(kmz暂时读不了)可选1:如果要用到图形就用.

2020-11-16 21:53:49 7420 3

原创 ImportError: cannot import name QAxContainer from PyQt5 错误解决方法

pyqt5 的部分模块并没有安装,在调用的时候提示导入错误。解决方案:导入pyqt5 tools执行pip安装pip install PyQt5 tools -i https://pypi.douban.com/simple --user如果报错可能是安装版本和tools不匹配可以卸载重新安装pyqt5pip uninstall pyqt5pip uninstall pyqt5-sip然后安装pip install PyQt5 -i https://pypi.doub

2020-05-15 09:13:00 1753

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除