' q! D+ N/ y% S7 x! k5 Q; E 在地理空间数据分析中,常会用到许多地理分析的工具,在本模块中主要是针对常用的shapely、geopandas、folium、kepler.gl、geohash等工具进行简单介绍。其中shapely和geopandas是做地理空间数据的分析很好的工具,而folium和kepler.gl是进行地理数据可视化的工具,geohash是将经纬度坐标进行数据编码的方式。通过了解不同的方法将有助于我们去思考如何在现有的工具下去做数据的分析和特征的提取功能
6 T) e u$ X5 W" N( R j2 Q7 _ 学习目标¶ # L* X, N4 r& e- b5 O
1.了解和学习shapely和geopandas的基本功能,掌握用python中的这两个库实现几何对象之间的空间操作方法。 - w8 X$ V, Z5 D( e
2.掌握folium和kepler.gl的数据可视化工具的使用。 1 J+ m) ?: a+ G+ x) `
3.学习与掌握geohash编码方法。 " v$ [, F) R+ J
python包安装
8 A: M% c5 o5 ]9 O5 U 1、创建虚拟环境
6 B1 z# s0 u( C7 M2 i3 o 在anaconda prompt中,执行
3 ^ I; Q, Z1 c' g, b# R9 f - conda create -n wisdomOcean python=3.6
& I: D/ A9 q2 B, G - activate wisdomOcean 6 o0 u3 Y( V7 z
- pip install numpy ! E# r0 v' B4 Y
- pip install shapely
; P1 G5 P* ?) i2 N - conda install geopandas=0.9.0 -c https://mirrors.sjtug.sjtu.edu.cn/anaconda/cloud/conda-forge -y
3 |9 k! o$ e7 B, `7 d - conda install folium -c conda-forge
1 F1 S( l7 c, z" Y# E7 E `9 t 2、geopandas安装 " m1 f+ X0 G) E7 z1 \4 k' }
- 地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyproj ' @& G. J! A3 u
- 下载版本:使用与Python 3.6 / q5 X3 r: O5 \5 j
- Fiona-1.8.13-cp36-cp36m-win_amd64.whl
8 p( y) Y8 {) w - GDAL-3.0.4-cp36-cp36m-win_amd64.whl
1 i- ~3 t; h6 ?, p - geopandas-0.9.0-py3-none-any.whl
E9 G& ?1 D7 z - pyproj-2.4.2.post1-cp36-cp36m-win_amd64.whl
* S+ g Q! |0 L9 X5 X. f& Q3 b( { - 用pip分别进行安装 pip install GDAL-3.0.4-cp36-cp36m-win_amd64.whl Fiona-1.8.13-cp36-cp36m-win_amd64.whl pyproj-2.4.2.post1-cp36-cp36m-win_amd64.whl geopandas-0.9.0-py3-none-any.whl
/ r3 }7 c7 l! u' m ^ - pip install -i https://pypi.tuna.tsinghua.edu.cn/simple geopandas
# n9 g* Q2 ? @3 r( E6 K 3、keplergl安装 0 ^/ B" i5 k8 J/ @' s
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple ipywidgets==7.4.2
# o: }5 W {9 m2 F - pip install -i https://pypi.tuna.tsinghua.edu.cn/simple traitlets4.3.2 - g% E5 K# a9 r/ ?) D0 N6 ]
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple traittypes==0.2.1 + z! D7 \- D, |+ ]0 k
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple keplergl 7 z4 G! F& |) Q. I
- pip install npm ) H9 m( t5 K0 Z2 }6 p# Y: x# x
注:除了安装keplergl,还需要安装node.jshttps://nodejs.org/en/download/下载node.js安装即可 $ b1 ]8 L6 W: ^0 Q: z
导入包
( `7 @' _% K% Y; l8 v+ ]/ d
' ^- D Y- h) v [; R" p; L6 y #这一行代码不用运行,github上有已经运行的csv文件 9 `6 {. m% `5 Y" S( ~& n; |
读入文件 # x- t! H3 C/ ?( H
df_gpd_change=pd.read_csv(rC:\Users\admin\df_gpd_change.csv) ! s1 t% e, \+ g0 A" t g
作业一:尝试去使用kepler.gl可视化来分析不同类型船舶AIS数据的分布情况 . H% f2 a: [% K% T! E
/ d6 Y; P- T8 m6 H0 c # O" I6 |4 b* J. y3 S. P
" _& \ X1 m" x! ~7 D5 z2 g- Q8 o
( @- B8 i% n3 e* ~2 `
" N, z7 @2 _! z" c" G% ] J' ?+ A! j# |6 d0 O, u" \
# Y* `+ o0 G! T- v& b |