matplotlib Basemap中如何加载shp文件
发表于:2024-10-20 作者:千家信息网编辑
千家信息网最后更新 2024年10月20日,小编给大家分享一下matplotlib Basemap中如何加载shp文件,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!matplotlib是python中的一个画图插件;matpl
千家信息网最后更新 2024年10月20日matplotlib Basemap中如何加载shp文件
小编给大家分享一下matplotlib Basemap中如何加载shp文件,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
matplotlib是python中的一个画图插件;
matplotlib支持二维图的效果,也支持三维图的效果,在大数据的制作中,可以以地图为底,在旁边加上柱状图的效果,达到一个三维立体的效果,python现成的库有很多,这在开发中就比较方便,可以直接import进来使用。
matplotlib的Basemap中包含解析常用的shp格式矢量数据,通过读取shp文件,可以很方便的在Basemap上进行画图。
下边是根据Basemap的一个例子,说明如何读取shp,并将shp里的数据画在地图上:
#引用相应的类库
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap as Basemap
# 设置地图的坐标系和坐标显示范围
m = Basemap(llcrnrlon=-100.,llcrnrlat=0.,urcrnrlon=-20.,urcrnrlat=57.,
projection='lcc',lat_1=20.,lat_2=40.,lon_0=-60.,
resolution ='l',area_thresh=1000.)
fig=plt.figure()
# 读取shp文件,注意第二个参数是shp文件在地图里的名称,接下来要用的.
shp_info = m.readshapefile('huralll020','hurall',drawbounds=False)
print(shp_info)
#在地图中找到shp文件,读取shp文件中的属性
names = []
for shapedict in m.hurall_info:
cat = shapedict['CATEGORY']
name = shapedict['NAME']
if cat in ['H4','H5'] and name not in names:
if name != 'NOT NAMED': names.append(name)
print(names)
print(len(names))
# 根据属性,在地图上画图
for shapedict,shape in zip(m.hurall_info,m.hurall):
name = shapedict['NAME']
cat = shapedict['CATEGORY']
if name in names:
xx,yy = zip(*shape)
# plot为在地图上画图
if cat in ['H4','H5']:
m.plot(xx,yy,linewidth=1.5,color='r')
elif cat in ['H1','H2','H3']:
m.plot(xx,yy,color='k')
# 在地图上画其他辅助要素,国界,经纬度线等
m.drawcoastlines()
m.drawcountries()
m.drawmapboundary(fill_color='#99ffff')
m.fillcontinents(color='#cc9966',lake_color='#99ffff')
m.drawparallels(np.arange(10,70,20),labels=[1,1,0,0])
m.drawmeridians(np.arange(-100,0,20),labels=[0,0,0,1])
#设置图的标题
plt.title('Atlantic Hurricane Tracks (Storms Reaching Category 4, 1851-2004)')
plt.show()
看完了这篇文章,相信你对"matplotlib Basemap中如何加载shp文件"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
地图
文件
效果
数据
坐标
属性
篇文章
三维
支持
接下来
例子
参数
名称
国界
坐标系
完了
常用
插件
更多
标题
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络技术公司笔试题
数据库技术考试辅导
下表是某工厂的工程数据库
获取数据库时间 sql
2018年学校网络安全计划
nosql数据库的种类
.net 链接数据库
微擎连接不到阿里云数据库
todesk能用代理服务器么
网站服务器怎么进
ssm显示图片从数据库
广东软件开发大学哪个好
深圳市普瑞网络技术有限公司
富士康工业互联网软件开发
学习网络安全需要英语吗
网络安全装修
网络服务器机柜生产
db2数据库错误3107
数据库表结构设计要求有哪些
湖南服务器租用
首席网络安全官派驻
汽车电子软件开发规范
中国国际新闻网络安全
redis 和数据库交互
S4用2005数据库行不行
吉林特色软件开发特征
吉林智慧养老软件开发电话
电信网络安全承诺书
东方通 数据库
万象酒店服务器配置