python画地形地貌图_opencv检测瑕疵python

python画地形地貌图_opencv检测瑕疵python我们可以使用basemap这个工具包来实现中国地图的绘制首先需要加载一些包:importnumpyasnpimportmatplotlib.pyplotaspltfrommpl_toolkits.basemapimportbasemapbasemap包就是气象画图的利器,现在我们就可以愉快的画图了!plt.figure(1)map=basemap()map.drawcoastli…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

我们可以使用basemap这个工具包来实现中国地图的绘制

首先需要加载一些包:

import numpy as np

import matplotlib.pyplot as plt

from mpl_toolkits.basemap import basemap

basemap包就是气象画图的利器,现在我们就可以愉快的画图了!

plt.figure(1)

map=basemap()

map.drawcoastlines()

plt.title(r’$world\ map$’,fontsize=24)

plt.show()

第2行创建一个地图,第3行添加海岸线,这样一个世界地图就出来了,怎么样,很简单吧。(plt.show()这行代码是用来显示图片的)

6d92e9eda134fc6693384ebc994c7fa6.png

我们发现这只是海岸线图,那么怎么将国界线添加上去呢?很简单,只要添加一行代码就可以了。

map.drawcountries()

13cdc6718ce865f6f21eb19e90c2c093.png

那么怎么添加河流呢?可能有些同学已经猜到了,就是drawrivers()

map.drawrivers(color=’blue’,linewidth=0.3)

b37d83d80de182404191ea055a454446.png

好了,现在我们可以开始画中国地图了!

其实只要在创建地图时指定一下范围就可以了,查阅资料发现,中国的经纬度范围是东经135度2分30秒-东经73度40分,北纬3度52分-北纬53度33分。

map=basemap(llcrnrlon=70,llcrnrlat=3,urcrnrlon=139,urcrnrlat=54)

6ecacd3f7fef4a6de3228029fbfe7d57.png

好了,一个中国地图就出来了!但是我们发现,好像少了点什么,没错就是省界。我们可以在下载中国大陆和台湾省的行政区域的shape文件,下载后解压,然后加入下面的代码。

chn=’g:\python_material\mapofchina’

chn的值就是解压后的地图文件所在的地址。

下面我们就可以加入省界了!

map.readshapefile(chn+’\gadm36_chn_shp\gadm36_chn_1′,

‘states’,drawbounds=true)

别忘了把台湾省加上去

map.readshapefile(chn+’\gadm36_twn_shp\gadm36_twn_1′,

‘taiwan’,drawbounds=true)

5e69b0422c952cdc2bb632e24f0e86c6.png

还可以在地图上加上经纬度,比如我们要画5条经纬线,可以这么做:

parallels = np.linspace(3,55,5)

map.drawparallels(parallels,labels=[true,false,false,false])

meridians = np.linspace(70,140,5)

map.drawmeridians(meridians,labels=[false,false,false,true])

38c937f0a24d2632ea829d27528517fc.png

大功告成!但是,emmm,我们发现好像有点歪?我们可以在创建地图时选择投影参数。

map=basemap(llcrnrlon=70,llcrnrlat=3,urcrnrlon=137,urcrnrlat=54,

projection = ‘lcc’, lat_1 = 33, lat_2 = 45, lon_0 = 100)

98dc34f1065a68493b510f00096b7863.png

这回正式的完成了!

附上所有代码:

import numpy as np

import matplotlib.pyplot as plt

from mpl_toolkits.basemap import basemap

plt.figure(1)

map=basemap(llcrnrlon=70,llcrnrlat=3,urcrnrlon=139,urcrnrlat=54,

projection = ‘lcc’, lat_1 = 33, lat_2 = 45, lon_0 = 100)

map.drawcoastlines()

map.drawcountries()

map.drawrivers(color=’blue’,linewidth=0.3)

chn=’g:\python_material\mapofchina’

map.readshapefile(chn+’\gadm36_chn_shp\gadm36_chn_1′,

‘states’,drawbounds=true)

map.readshapefile(chn+’\gadm36_twn_shp\gadm36_twn_1′,

‘taiwan’,drawbounds=true)

parallels = np.linspace(3,55,5)

map.drawparallels(parallels,labels=[true,false,false,false])

meridians = np.linspace(70,140,5)

map.drawmeridians(meridians,labels=[false,false,false,true])

plt.title(r’$china\ map$’,fontsize=24)

plt.show()

以上就是利用python绘制中国地图的详细内容,更多关于python 绘制地图的资料请关注萬仟网其它相关文章!

希望与广大网友互动??

点此进行留言吧!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/227279.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • PyPDF2的使用「建议收藏」

    PyPDF2的使用「建议收藏」pdf使用Adobe公司开发,现在由国际标准化组织ISO进行维护。PDF合成包含链接和按钮,表单字段,音频,视频和业务逻辑在这篇文章中,我们将学习如何做一些pdf的操作:从PDF中提取文字旋转pdf页合并pdf分割pdf向pdf页中添加水印使用简单的python脚本1、安装我们将使用第三方的模块PyPDF2PyPDF2是作为PDF…

  • IDEA教程之Activiti插件[通俗易懂]

    IDEA教程之Activiti插件[通俗易懂]本文作者:Spring_ZYL意见反馈:15065421873@163.com文章来源:https://blog.csdn.net/gozhuyinglong版权声明:本文版权归作者所有,转载请注明出处一、安装Activiti插件1.搜索插件点击菜单【File】–>【Settings…】打开【Settings】窗口。点击左侧【Plugins】…

  • Struts2漏洞复现合集

    Struts2漏洞复现合集1.Struts2简介Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts2是Struts的下一代产品,是在struts1和WebWork的技术基础上进行了合并的全新的Struts2框架。其全新的Struts2的体系结构与Struts1的体系结构差别巨大。Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务

  • matlabinterp1函数_matlab中subs

    matlabinterp1函数_matlab中subs今天通过几个实例对matlab中的interp1插值函数进行了深入的理解,下面通过几组数据进行说明。插值法:插值法又称“内插法”,是利用函数f(x)在某区间中已知的若干点的函数值,作出适当的特定函

  • yum命令安装wget无法安装

    yum命令安装wget无法安装通过yum-yinstallwget安装wget失败,先执行下面命令curl-o/etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo而后再执行yum-yinstallwget

  • junit mock 方法(need的用法总结)

    使用EasyMock的总体步骤1、生成Mock接口IServicemockService=EasyMock.createMock(“name”,IService.class);如果要mock对象,而不是接口,应该使用classextension:org.easymock.classextension.EasyMock如果要mock多个接口,最好使用Mo

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号