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 绘制地图的资料请关注萬仟网其它相关文章!

希望与广大网友互动??

点此进行留言吧!

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ES6 json转map map转json

    ES6 json转map map转json1、json转map<script>letjson={“name”:”ES6″,”day”:”2014″,”feature”:”新特性”}; //json2map letmap=newMap(); for(letiinjson){ map.set(i,json[i]); } console.log(map);</script…

    2022年6月15日
  • javabase64编码原理和解码,加密案例

    javabase64编码原理和解码,加密案例javabase64编码原理和解码,加密案例

    2022年4月23日
  • phpstorm2021.12激活【中文破解版】

    (phpstorm2021.12激活)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~AFH5…

    2022年3月30日
  • 一张图说明–桥接模式与NAT模式的差别「建议收藏」

    一张图说明–桥接模式与NAT模式的差别「建议收藏」不废话,直接上一张简单清晰的对比图桥接模式里虚拟机中的虚拟网络适配器可通过主机中的物理网络适配器直接访问到外部网络。如上图所示的局域网中添加了一台新的、独立的计算机一样。宿主机与vm虚拟机是平级关系。因此,虚拟机也会占用局域网中的一个IP地址,并且可以和其他终端进行相互访问…

    2022年6月16日
  • 控制中的各种函数MATLAB仿真

    控制中的各种函数MATLAB仿真控制系统的MATLAB仿真1MATLAB简介MATLAB是Mathworks公司开发的一种集数值计算、符号计算和图形可视化三大基本功能于一体的功能强大、操作简单的优秀工程计算应用软件。MATLAB不仅可以处理代数问题和数值分析问题,而且还具有强大的图形处理及仿真模拟等功能。从而能够很好的帮助工程师及科学家解决实际的技术问题。MATLAB的含义是矩阵实验室(MatrixL

    2022年6月4日
  • Python之contextlib库及源码分析建议收藏

    AbstractContextManager(abc.ABC)上下文管理抽象类,子类必须实现__enter__(self)、__exit__(self)ContextDecorator(objec

    2021年12月19日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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