研究生数学建模竞赛(研究生数学建模竞赛优秀论文)

研究生数学建模竞赛,研究生数学建模竞赛优秀论文

MATH

GeoPandas库使用绘制地图

GeoPandas提供了地理空间数据的高级接口,它让使用python处理地理空间数据变得更容易。GeoPandas扩展了pandas(GeoPandas的目标是使使用python处理地理空间数据更容易。它结合了熊猫和shape的功能,提供了熊猫的地理空间操作和shape的多个几何图形的高级接口。GeoPandas使您能够轻松地在python中进行操作,否则将需要空间数据库(如PostGIS)。)使用的数据类型,允许对几何类型进行空间操作。几何运算由shapely执行。Geopandas进一步依赖fiona进行文件访问,依赖matplotlib进行绘图。

geopandas和pandas一样,一共有两种数据类型:

-GeoSeries

-GeoDataFrame

它们继承了pandas数据结构的大部分方法。这两个数据结构可以当做地理空间数据的存储器,shapefile文件的pandas呈现。

Shapefile文件用于描述几何体对象:点,折线与多边形。例如,Shapefile文件可以存储井、河流、湖泊等空间对象的几何位置。除了几何位置,shp文件也可以存储这些空间对象的属性,例如一条河流的名字,一个城市的温度等等。

例如,当安装geopandas库后,便可通过matplotlib直接画出当安装geopandas数据集中的世界地图

importpandas as pd

importgeopandas

importmatplotlib.pyplot as plt

world=geopandas.read_file(geopandas.datasets.get_path(‘naturalearth_lowres’))#read_file方法可以读取shape文件,转化为GeoSeries和GeoDataFrame数据类型。

world.plot()#将GeoDataFrame变成图形展示出来,得到世界地图

plt.show()

#根据每一个polygon的pop_est不同,便可以用python绘制图表显示不同国家的人数

fig,ax = plt.subplots(figsize=(9,6),dpi = 100)

world.plot(‘pop_est’,ax= ax,legend = True)

plt.show()

由以上geodataframe的实例world可知,其最后一列是geometry。其几何对象包括了MULTIPOLYGON、POLYGON,那么便同样可以用刚才介绍的shapely库进行分析。

gFolium库使用绘制地图:

folium可以满足我们平时常用的热力图、填充地图、路径图、散点标记等高频可视化场景.folium也可以通过flask让地图和我们的数据在网页上显示,极其便利。

importfolium

importos

#首先,创建一张指定中心坐标的地图,这里将其中心坐标设置为北京。zoom_start表示初始地图的缩放尺寸,数值越大放大程度越大

m=folium.Map(location=[39.9,116.4],zoom_start=10)

M

以下是Foliummap的参数:

用Folium绘制热力图示例:

importfolium

importnumpy as np

fromfolium.plugins import HeatMap

#先手动生成data数据,该数据格式由[纬度,经度,数值]构成

data=(np.random.normal(size=(100,3))*np.array([[1,1,1]])+np.array([[48,5,1]])).tolist()

m=folium.Map([48,5],tiles=’stamentoner’,zoom_start=6)

HeatMap(data).add_to(m)

m

BONUS TIME

数学建模资料、视频讲解、历年赛题

后台回复 【校苑】领取

研究生数学建模竞赛(研究生数学建模竞赛优秀论文)