利用Geopandas进行地图数据打点

利用Geopandas进行地图数据打点,话不多说,代码如下:

# -*- coding: utf-8 -*-
"""
@Tsinlu
"""
import matplotlib.pyplot as plt
import geopandas
import pandas as pd

ds = geopandas.GeoDataFrame.from_file('path\filename.shp',encoding = 'gb18030')#导入需要打点的地图
#地图预览
fig = plt.figure(figsize = (10,6))
ax = plt.subplot()
ds.plot(edgecolor = 'k', facecolor = 'w',alpha = 0.5, ax = ax)
plt.show()
#导入需要打点的数据
df = pd.read_csv(r'path\filename.csv',index_col = 0)
#进行地图打点
fig = plt.figure(figsize = (10,6))
ax = plt.subplot()
ds.plot(edgecolor = 'k', facecolor = 'w',alpha = 0.5, ax = ax)#这里这个ax = ax其实蛮有用的,刚开始没用的时候,点和地图基本是在画布的两个区域
plt.scatter(xdata,ydata,s = 2.c = 'r',alpha = 0.5)#s是点的大小,可以用来绘制气泡图
plt.text(x,y,'Jixu nuli xuexi python, jiazhuang wo shi dalao xilie!'
#plt.savefig('path\filename') #注意,savefig需要在show之前,不然你只会保存一张空白图片呦。原因嘛,那是因为show默认结束后close画布的。
plt.show()

over! 就这么简单几句话,python是不是很强大?!
Of course! 我还只是只菜鸟,问题还有很多,所以各位大佬和萌新们,有啥批评建议尽管向我砸过来吧。

你可能感兴趣的:(利用Geopandas进行地图数据打点)