天气数据可以从网上下载,这个例子的数据是从http://data.cma.cn/下载而来的。

下载的数据装在txt文件中。

里面包含了12年开始北京的月最低和最高温度。

读取数据:

1 with open('S201812261702093585500.txt') as file_object:2 lines=file_object.readlines()

将txt中的数据逐行存到列表lines里 lines的每一个元素对应于txt中的一行。然后将每个元素中的不同信息提取出来:

1 file1=[]2 row=[]3 for line inlines:4 row=line.split() #指定空格作为分隔符对line进行切片

5 file1.append(row)

这样,所有的信息都存在了中file1中,file1嵌套了列表row,file1中的每一元素包含了一个列表,所有的信息都被分隔开了。

可以print(file1)看一下:

需要使用第2、3、4、5列的年、月、最低温度、最高温度信息,将它们分别提取出来。

1 date=[]2 highs=[]3 lows=[]4 for row1 infile1:5 a=row1[1]+"-"+row1[2] #合并年月6 date.append(a)7 for row1 infile1:8 lows.append(row1[3])9 highs.append(row1[4])

在读数据时将表头也读进去了,删除列表第一个元素

1 delhighs[0]2 dellows[0]3 del date[0]

现在,日期和温度数据被分别存在date、highs、lows三个列表里,但是还不能直接使用,因为提取出来的都是字符型数据,转换数据格式为int型:

1 int_highs=[]2 for str_h inhighs:3 a=int(float(str_h))4 int_highs.append(a)5

6 int_lows=[]7 for str_l inlows:8 a=int(float(str_l))9 int_lows.append(a)

将日期转换为日期格式,需要使用datetime模块,在文件开头加上from datetime import datetime,:

1 from datetime importdatetime2 dates=[]3 for a indate:4 current_dates=datetime.strptime(a,'%Y-%m')5 dates.append(current_dates)

导入matplotlib模块

1 from matplotlib importpyplot as plt2 import matplotlib.dates as mdates

下面就准备画图啦:

1 fig=plt.figure(figsize=(10,6))2 ax1=fig.add_subplot(111) #将画面分割为1行1列选第一个

3 ax1.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m'))#设置横轴为日期格式

4 ax1.plot(dates,int_highs,c="red")#画最高温度,颜色红

5 ax1.plot(dates,int_lows,c="blue")#画最低温度,颜色蓝

6 fig.autofmt_xdate()7 ax1.set_title("Daily Max and Min TemperatureC",fontsize=14)#标题

8 ax1.set_ylabel("Temperature (℃)")#纵轴label

9 ax1.tick_params(direction='in')#刻度向里

10 plt.show()

画好的图:

python从txt读取数据并画图_python读取txt天气数据并使用matplotlib模块绘图相关推荐

  1. python从txt读取数据并画图_Python读取txt某几列绘图的方法

    晚上帮同学用Python脚本绘图,大概需求是读取一个txt文件的两列分别作为x和y的值,绘图即可,代码如下: #coding:utf-8 import numpy as np import matpl ...

  2. python读excel中数据画图_python读取excel数据并且画图的实现示例

    一,要读取的数据的格式: 二,数据读取部分: b站视频参考:https://www.bilibili.com/video/BV14C4y1W7Nj?t=148 # 1930 workbook=xlrd ...

  3. python将一列数据转换成向量_python读取csv和txt数据转换成向量的实例

    python读取csv和txt数据转换成向量的实例 最近写程序需要从文件中读取数据,并把读取的数据转换成向量. 查阅资料之后找到了读取csv文件和txt文件两种方式,下面结合自己的实验过程,做简要记录 ...

  4. python提取word表格里的内容_python读取word表格 python中如何将word表格内的内容进行替换...

    python如何获取word文件中某个关键字之后的表格一片春愁待酒浇.江上舟摇,楼上帘招.秋娘度与泰娘娇.风又飘飘,雨又萧萧.何日归家洗客袍?银字笙调,心字香烧.流光容易把人抛.红了樱桃,绿了芭蕉. ...

  5. 命令python所在的驱动器和文件夹_Python读取不同本地驱动器位置的文件

    有人能告诉我Python中文件路径的问题吗? 例如,我的代码需要读取一批文件,文件名被列出并存储在一个.txt文件中,即C:\ filelist.txt,其内容是:C:\1stfile.txt C:\ ...

  6. python爬虫天气数据_python爬虫:天气数据的分析

    就在前几天还是二十多度的舒适温度,今天一下子就变成了个位数,小编已经感受到冬天寒风的无情了.之前对获取天气都是数据上的搜集,做成了一个数据表后,对温度变化的感知并不直观.那么,我们能不能用python ...

  7. python数据可视化代码_Python实现简单的数据可视化

    现在python这门解释型语言被越来越多的人们喜欢,强大的库支持,使得编程过程变得简单. 我是一个传统的C语言支持者,往后也打算慢慢的了解Python的强大. 今天我就学习一下使用python实现数据 ...

  8. python读取xml文件内容_python读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python来读取xml文件. 什么是xm ...

  9. python将经纬度标注在地图上_python读txt与写excel,将经纬度坐标点显示在地图上...

    逐行读取txt文件得line,每行按空格分割一个数组line_data[],line_data[0]是userID,对于相同的user只取其第一个位置样本,其中提取第三四列元素,写进excel中. 原 ...

最新文章

  1. MTD和 uboot中的bootargs 下属 mtdparts
  2. Python黑帽编程2.8 套接字编程
  3. 每日一题(易错):这条SQL语句,有什么作用?
  4. java中for循环快捷方式_IntelliJ IDEA(快捷键):快速生成各种for循环(示例代码)...
  5. java用JDBC连接数据库的方式
  6. vim编辑python_Python3基础知识——Vi/Vim编辑器的使用,大神们都在用的
  7. 拉普拉斯方程续有限差分法
  8. PhpQuery PHP操作HTML类,PHP操作XML类,PHP操作Dom类
  9. linux下qt实现vlc视频播放器,Qt编写视频播放器(vlc内核)
  10. Win10:系统迁移,重启报错0xc000000e
  11. 小米手机系统wifi服务器,手机时间变慢,小米高管科普:3招即可解决
  12. Unity3D使用透明视频,解决Pr导出WebM毛边问题
  13. java实现单词默写助手,强烈建议new-hand收藏
  14. 简图记录-正则表达式原理与应用基础
  15. 联想笔记本键盘亮屏幕不亮_联想笔记本电脑开机键亮但是黑屏 联想笔记本电脑键盘失灵怎么办...
  16. matlab离散点数字微分,MATLAB数值积分与微分
  17. 工业互联网与高端装备健康管理解决方案
  18. CSP CCF: 201909-3 字符画) (C++)
  19. MATLAB神经网络43个案例分析
  20. TechPowerUp GPU-Z - Windows GPU 信息查询

热门文章

  1. Android native开发严重问题总结
  2. 排序算法和查找算法总结
  3. 单片机 架构 程序 经验总结_avr单片机工作经验总结
  4. 并网逆变器PQ控制。 逆变器采用两电平逆变器,通过功率闭环控制,实现并网单位功率因数
  5. WeX5数据组件详解
  6. 简易关键点标注软件分享
  7. 【Python】抓取电影海报并下载
  8. Android 泽宇Retrofit+Rxjava
  9. [沧海拾遗]java并发之Executor
  10. Java实验三:面向对象(二)