使用Python绘制台风轨迹图的示例代码


Posted in Python onSeptember 21, 2020

参考:

2.Basemap生成的图中绘制轨迹

使用CMA热带气旋最佳路径数据集,对我国周边的台风进行绘制

import re
import os
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap




path=r"E:\Computer Science\数学建模\第二次模拟赛题\附件"
files= os.listdir(path) #得到文件夹下的所有文件名称
data=[]
all=[]
for file in files: #遍历文件夹
  if not os.path.isdir(file): # 判断是否是文件夹,不是文件夹才打开
    f = open(path + "/" + file) # 打开文件
    tmp=f.readlines()
    for i in tmp:
      line=i.split()
      if(line[0]=='66666'):
        if(len(all)>0):
          data.append(all)
        # print(line)
        all=[]
      else:
        we=(int(line[2])*0.1,int(line[3])*0.1)
        all.append(we)
# print(data)
print(len(data))
CHN='E:\Computer Science\数学建模\python_basemap'
plt.figure(figsize=(20,12))
map=Basemap(llcrnrlon=70,llcrnrlat=2,urcrnrlon=170,urcrnrlat=58)
map.drawcoastlines()
map.drawcountries()
#添加河流
# map.drawrivers(color='blue',linewidth=0.3)
#添加大陆
map.readshapefile(CHN+'\gadm36_CHN_shp\gadm36_CHN_1',
         'states',color='blue',drawbounds=True)
map.readshapefile(CHN+'\gadm36_TWN_shp\gadm36_TWN_1',
         'taiwan',color='blue',drawbounds=True)
#添加经纬线
parallels = np.linspace(3,55,5)
# print(parallels)
map.drawparallels(parallels,labels=[False,True,False,False],fontsize=5)
meridians = np.linspace(70,170,5)
# print(meridians)
map.drawmeridians(meridians,labels=[False,False,False,True],fontsize=5)
plt.rcParams['savefig.dpi'] = 300 #图片像素
plt.rcParams['figure.dpi'] = 300 #分辨率

ans=1
x=[]
y=[]
for typhoon in data:
  length=len(typhoon)
  print("%d is process!" % ans)
  ans += 1
  for i in range(length):
    x.append(typhoon[i][1])
    y.append(typhoon[i][0])
  # print(x,y)
  # map.plot(x, y, 'c*-', linewidth=2)
  map.plot(x, y, color='r',linewidth=1.5)
  x = []
  y = []
map.fillcontinents()
plt.title(r'$China\ Typhoon$',fontsize=24)
# plt.ylim(70, 170)
# plt.xlim(2, 58)
plt.show()

效果图:

使用Python绘制台风轨迹图的示例代码

以上就是使用Python绘制台风轨迹图的示例代码的详细内容,更多关于Python绘制轨迹图的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python程序语言快速上手教程
Jul 18 Python
python的Template使用指南
Sep 11 Python
Python中使用dom模块生成XML文件示例
Apr 05 Python
Python使用logging结合decorator模式实现优化日志输出的方法
Apr 16 Python
Php多进程实现代码
May 07 Python
python批量下载抖音视频
Jun 17 Python
flask应用部署到服务器的方法
Jul 12 Python
django框架创建应用操作示例
Sep 26 Python
Python pickle模块实现对象序列化
Nov 22 Python
Python assert关键字原理及实例解析
Dec 13 Python
django 实现简单的插入视频
Apr 07 Python
Python字典的基础操作
Nov 01 Python
利用python绘制中国地图(含省界、河流等)
Sep 21 #Python
python利用google翻译方法实例(翻译字幕文件)
Sep 21 #Python
python统计mysql数据量变化并调用接口告警的示例代码
Sep 21 #Python
python3.8动态人脸识别的实现示例
Sep 21 #Python
如何在Anaconda中打开python自带idle
Sep 21 #Python
Python 实现国产SM3加密算法的示例代码
Sep 21 #Python
python如何实现DES加密
Sep 21 #Python
You might like
收音机发烧友应当熟知的100条知识
2021/03/02 无线电
简体中文转换为繁体中文的PHP函数
2006/10/09 PHP
PHP XML数据解析代码
2010/05/26 PHP
PHP中文件上传的一个问题
2010/09/04 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
php实现的pdo公共类定义与用法示例
2017/07/19 PHP
PHP微信H5支付开发实例
2018/07/25 PHP
详解PHP变量传值赋值和引用赋值变量销毁
2019/03/23 PHP
不懂JavaScript应该怎样学
2008/04/16 Javascript
javascript 面向对象全新理练之数据的封装
2009/12/03 Javascript
js限制文本框只能输入数字(正则表达式)
2012/07/15 Javascript
jQuery遍历页面所有CheckBox查看是否被选中的方法
2015/04/14 Javascript
jQuery extend()详解及简单实例
2017/05/06 jQuery
基于jquery实现九宫格拼图小游戏
2018/11/30 jQuery
用vscode开发vue应用的方法步骤
2019/05/06 Javascript
JavaScript实现多张图片放大镜效果示例【不限定图片尺寸,rem单位】
2019/05/14 Javascript
js刷新页面location.reload()用法详解
2019/12/09 Javascript
Vue状态模式实现窗口停靠功能(灵动、自由, 管理后台Admin界面)
2020/03/06 Javascript
[50:50]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.20
2020/12/23 DOTA
下载糗事百科的内容_python版
2008/12/07 Python
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
python中将函数赋值给变量时需要注意的一些问题
2017/08/18 Python
python爬取微信公众号文章的方法
2019/02/26 Python
python实现截取屏幕保存文件,删除N天前截图的例子
2019/08/27 Python
wxPython窗体拆分布局基础组件
2019/11/19 Python
python GUI库图形界面开发之PyQt5访问系统剪切板QClipboard类详细使用方法与实例
2020/02/27 Python
css3实现波纹特效、H5实现动态波浪效果
2018/01/31 HTML / CSS
Kaufmann Mercantile官网:家居装饰、配件、户外及更多
2018/09/28 全球购物
怎样比较两个类型为String的字符串
2016/08/17 面试题
Unix如何添加新的用户
2014/08/20 面试题
经理职责范文
2013/11/08 职场文书
怎样写演讲稿
2014/01/04 职场文书
部队万能检讨书
2014/02/20 职场文书
环保项目建议书
2014/08/26 职场文书
python3操作redis实现List列表实例
2021/08/04 Python
python实现Nao机器人的单目测距
2021/09/04 Python