由于这样的原因,我经常避免使用Basemap,并使用OGR读取shapefile,并将其自己转换为Matplotlib艺术家.哪些是更多的工作,但也有更多的灵活性.

底图具有一些非常整洁的功能,例如将输入数据的坐标转换为“工作投影”.

如果您想粘贴Basemap,请获取一个不包含河流的shapefile.自然地球例如在物理部分有一个不错的“土地”形状文件(下载“等级”数据和解压缩).见http://www.naturalearthdata.com/downloads/10m-physical-vectors/

您可以使用来自Basemap的m.readshapefile()方法读取shapefile.这允许您在投影坐标中获取Matplotlib路径顶点和代码,然后可以将其转换为新路径.它有点绕路,但它为您提供了Matplotlib的所有样式选项,其中大部分不通过底图直接提供.它有点黑客,但我现在不是另一种方式,而是粘贴到底图.

所以:

from mpl_toolkits.basemap import Basemap

import matplotlib.pyplot as plt

from matplotlib.collections import PathCollection

from matplotlib.path import Path

fig = plt.figure(figsize=(8, 4.5))

plt.subplots_adjust(left=0.02, right=0.98, top=0.98, bottom=0.00)

# MPL searches for ne_10m_land.shp in the directory 'D:\\ne_10m_land'

m = Basemap(projection='robin',lon_0=0,resolution='c')

shp_info = m.readshapefile('D:\\ne_10m_land', 'scalerank', drawbounds=True)

ax = plt.gca()

ax.cla()

paths = []

for line in shp_info[4]._paths:

paths.append(Path(line.vertices, codes=line.codes))

coll = PathCollection(paths, linewidths=0, facecolors='grey', zorder=2)

m = Basemap(projection='robin',lon_0=0,resolution='c')

# drawing something seems necessary to 'initiate' the map properly

m.drawcoastlines(color='white', zorder=0)

ax = plt.gca()

ax.add_collection(coll)

plt.savefig('world.png',dpi=75)

得到:

python画河流图_python – 世界地图没有河流matplotlib /底图?相关推荐

  1. 用python画面积图_Python笔记:用matplotlib绘制面积图

    用pyecharts绘制出来的面积图.圆环图太有个性了,未免感觉有点"高处不胜寒".今晚虽然休息,但继用matplotlib绘制折线图之后,我又心血来潮地想用matplotlib来 ...

  2. 用python画动图_Python 绘图与可视化 matplotlib 制作Gif动图

    参考链接:https://blog.csdn.net/theonegis/article/details/51037850 我们可以使用Matplotlib的animation类的FuncAnimat ...

  3. 如何用python画函数曲线_Python笔记:用matplotlib绘制函数曲线图

    # 导入相关的包 import numpy as np import matplotlib.pyplot as plt import matplotlib as mpl #%%配置全局绘图参数 #设置 ...

  4. 怎么用python画个电脑_python语言还是java如何用python画爱心

    用python绘制爱心的基本步骤如下: 002pc.com对<python语言还是java如何用python画爱心>总结来说,为我们学习Python很实用. 首先先下载安装好python程 ...

  5. 用python画一个笑脸_python画个笑脸

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! project python是一本免费的交互式书籍,它通过使用图形.动画和游戏来 ...

  6. python画xy轴_python画双y轴图像的示例代码

    很多时候可能需要在一个图中画出多条函数图像,但是可能y轴的物理含义不一样,或是数值范围相差较大,此时就需要双y轴. matplotlib和seaborn都可以画双y轴图像. 一个例子: import ...

  7. python画樱花树教程_Python画樱花树❀

    这篇文章参考了别人的博客<Python:绘制樱花树> 原文作者:Ambitioner_c.他又参考了作者:沙漏在下雨 哈哈-- 一.代码详解 (一)绘制画幕 首先绘制画幕,命令说明如下: ...

  8. python画pr曲线_python 画函数曲线示例

    python 画函数曲线示例 如下所示: import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 2 * np.pi ...

  9. python画微信表情_python画微信表情符的实例代码

    #@project = facepalm #@file = main #@author = Maoliang Ran #@create_time = 2018/8/28 22:57 import tu ...

最新文章

  1. [译]一个系统管理员眼中的DevOps
  2. 常用的Windows批处理
  3. MaperReduce实验
  4. jpane1_Java—面板组件(Jpanel)1
  5. [转] 深入理解React 组件状态(State)
  6. .NET实现之(WebBrowser数据采集—续篇)
  7. javafx canvas_JavaFX技巧1:可调整大小的Canvas
  8. 三维数据平滑处理_VTK图像处理(二)--vtkPolyData数据处理
  9. 94女,大厂程序员,收入50w+
  10. 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。
  11. 2020软考信息系统项目管理师-上午历年真题解析视频课程-任铄-专题视频课程
  12. 12306验证码识别
  13. TX2(Ubuntu16.04)安装TP-link外接网卡驱动及AP热点创建
  14. 2022年1月份报告合集(共222份)
  15. tensorflow官方Blog-使用Keras Tuner超参数优化框架 进行超参数调整 ,具体实现版本
  16. 转载:浅谈Session与Cookie的区别与联系
  17. IPv6的NAT原理以及MAP66
  18. MATLAB图形绘制--离散数据绘图
  19. Nodecache免费香港CDN加速DNS解析服务1T流量!
  20. 江西用计算机写作文说课稿,信息技术说课稿范文(精选5篇)

热门文章

  1. 对ElasticSearch主副分片的理解
  2. 如何给图片更改格式?jpg转webp怎么操作
  3. LinuX合成软件,Natron 0.92发布,视频合成软件
  4. bmap、百度地图自定义画矩形
  5. 测试下mysql的几种连接,加深理解
  6. Flex 弹性布局教程以及对主轴 交叉轴的理解 :语法篇
  7. 关于大一新生的一些话
  8. 底什么是伪静态?为什么要做伪静态?
  9. 拍乐云推出业内首个「线上美术教学音视频方案」,打造极致互动体验
  10. iOS_Error(四)