用于将数据帧转换为geojson格式的工具。
convert2geojson的Python项目详细描述
将数据库转换为geojson,用于在地图上显示数据集。
从包含 纬度和经度的值。
注意:要限制geojson文件的大小,查找表是 为值数目有限的字段自动生成(<;20) 并保存为json文件中的顶级“properties”键。这不是 GeoJSON标准的一部分,可能导致皮棉出现问题,例如 GeoJSONLint。
安装
软件包的安装方法是
pip install convert2geojson
软件包的最新开发版本可以从 运行github
pip install git+https://github.com/computational-antiquity/convert2geojson.git
这将安装主分支的最新版本。
如果在Jupyterlab的地图上绘图没有产生结果,那么 可能是你的ipyleaflet installtion有问题 或者ipywidgets installtion。
基本用法
使用
fromconvert2geojsonimportConvert2GeoJson
加载数据
通过提供包含 geodata,例如dataframe=df,数据帧的列列表, 应显示为每个地理特征的信息,例如 properties=df.columns显示所有内容,以及 纵向和横向数据(标准参数名为 lat='latitude'和lon='longitude')。
data=Convert2GeoJson(df,df.columns,lat='latitude',lon='longitude')
预计地理数据将以浮点数形式显示。空行 longitudal或latitudel数据,或标记为NaN的数据从 提供的数据帧。
但是,原始数据帧仍然可以作为data.rawDF访问。
生成geojson
生成geojson简单运行
data.convert()
这将生成一个geojson格式的字典,可在
data.geojson()
要将geojson保存到文件中,请运行
data.save()
您可以为名称和路径提供参数,标准是 name='data.geojson'和path='.'。
绘制
为了绘制这个包,可以利用ipyleaflet package,它也是 可作为Jupyterlab扩展。
对于第一个概述,请使用
data.display()
这会将geojson特性绘制为基础映射上的一个层。
基本绘图可以通过地图布局的参数进行更改 (mapLayout=dict())和基本映射数据(basemap=dict())。
要使用自定义基本映射,可以提供格式的字典
customBasemap={'url':'https://{s}.URL_to_mapdata/{z}/{x}/{y}.png','max_zoom':'max available zoom level','attribution':'Attribution','name':'Name for layer control'}
屏幕截图
生成地图的屏幕截图
分组绘图
对于密集分布的地理数据,样式化选项包括
可用。
通过选择style='grouped'ipyleaflets markercluster用于
根据缩放级别显示标记组。点击
群集,地图缩放到包含选定标记的级别
在群集中。
另外,由于标记现在是单个实体,通过单击
标记弹出窗口显示属于
地理位置。
生成地图的屏幕截图
分组绘图
对于密集分布的地理数据,样式化选项包括 可用。
通过选择style='grouped'ipyleaflets markercluster用于 根据缩放级别显示标记组。点击 群集,地图缩放到包含选定标记的级别 在群集中。
另外,由于标记现在是单个实体,通过单击 标记弹出窗口显示属于 地理位置。
屏幕截图
生成的群集映射的屏幕截图
分类绘图为饼图分布
通过选择style='pie',并提供
dataframe列,通过设置groupBy='Category',包
生成以饼图形式显示聚集标记的独立映射
按所选类别分成子组。
生成的群集映射的屏幕截图
分类绘图为饼图分布
通过选择style='pie',并提供 dataframe列,通过设置groupBy='Category',包 生成以饼图形式显示聚集标记的独立映射 按所选类别分成子组。
屏幕截图
生成的饼图的屏幕截图
生成的饼图的屏幕截图
示例
看看Loading datasets 或者Advanced Plotting/example文件夹中的笔记本