Python CSV- 绘制气温图表
CSV- 绘制气温图表
资源:
链接: https://pan.baidu.com/s/1kqREk-sRnOcC34Mh1lBDHQ 提取码: uyx7
# highs_lows_Jul.py 最高温及最低温
import csv from matplotlib import pyplot as plt
from datetime import datetime # 从文件中获取最高气温
filename = 'data/sitka_weather_07-2014.csv'
with open(filename) as f: # 打开文件
reader = csv.reader(f) # 调用csv.reader(),创建一个与文件相关联的阅读器对象
header_row = next(reader) # 阅读下一行(标题行) """
for index, column_header in enumerate(header_row): # 获取索引及值
print(index, column_header)
""" """
dates = [datetime.strptime(row[0], '%Y-%m-%d') for row in reader] # 使用strptime方法设置日期的格式
highs = [int((int(row[1]) - 32) / 1.8) for row in reader] # Max TemperatureF列 每行的[1]索引处,并将华氏度转换为摄氏度
""" datas = [[datetime.strptime(row[0], '%Y-%m-%d'), int((int(row[1]) - 32) / 1.8)] for row in reader]
dates = [row[0] for row in datas] # or [datas[row][0] for row in range(len(datas))]
highs = [row[1] for row in datas] # or [datas[row][1] for row in range(len(datas))] # 根据数据绘制图形
fig = plt.figure(dpi=128, figsize=(10, 6))
plt.plot(dates, highs, c='red') # 设置图形的格式
plt.title('Daily high temperatures - July, 2014', fontsize=24)
plt.xlabel('', fontsize=12)
fig.autofmt_xdate() # 绘制斜的日期标签,以免重叠
plt.ylabel('Temperature (C)', fontsize=12)
plt.tick_params(axis='both', which='major', labelsize=12) # 添加数值
for x, y in zip(dates, highs):
plt.text(x, y, y, ha='center', va='bottom', color='blue') # 修改刻度
plt.xticks(dates[::3]) # 显示阿拉斯加锡特卡2014年7越每日最高气温折线图
plt.show()

# highs_lows_Jul.py 最高温及最低温
import csv from matplotlib import pyplot as plt
from datetime import datetime # 从文件中获取最高气温
filename = 'data/sitka_weather_2014.csv'
with open(filename) as f: # 打开文件
reader = csv.reader(f) # 调用csv.reader(),创建一个与文件相关联的阅读器对象
header_row = next(reader) # 阅读下一行(标题行) datas = [[datetime.strptime(row[0], '%Y-%m-%d'), int((int(row[1]) - 32) / 1.8)] for row in reader]
dates = [row[0] for row in datas]
highs = [row[1] for row in datas] # 根据数据绘制图形
fig = plt.figure(dpi=128, figsize=(10, 6))
plt.plot(dates, highs, c='red') # 设置图形的格式
plt.title('Daily high temperatures - 2014', fontsize=24)
plt.xlabel('', fontsize=12)
fig.autofmt_xdate() # 绘制斜的日期标签,以免重叠
plt.ylabel('Temperature (C)', fontsize=12)
plt.tick_params(axis='both', which='major', labelsize=12) # 修改刻度
plt.xticks(dates[::31]) # 显示阿拉斯加锡特卡2014年每日最高气温折线图
plt.show()

# highs_lows_Jul.py 最高温及最低温
import csv from matplotlib import pyplot as plt
from datetime import datetime # 从文件中获取最高气温
filename = 'data/sitka_weather_2014.csv'
with open(filename) as f: # 打开文件
reader = csv.reader(f) # 调用csv.reader(),创建一个与文件相关联的阅读器对象
header_row = next(reader) # 阅读下一行(标题行) datas = [[datetime.strptime(row[0], '%Y-%m-%d'), int((int(row[1]) - 32) / 1.8), int((int(row[3]) - 32) / 1.8)] for row in reader]
dates = [row[0] for row in datas]
highs = [row[1] for row in datas]
lows = [row[2] for row in datas] # 根据数据绘制图形
fig = plt.figure(dpi=128, figsize=(10, 6))
plt.plot(dates, highs, c='red', alpha=0.5)
plt.plot(dates, lows, c='blue', alpha=0.5) # 给图表区域着色
plt.fill_between(dates, highs, lows, facecolor='blue', alpha=0.2) # fill_between(x, y, y, facecolor, alpha)
# alpha值指定颜色的透明度(0为完全透明,1表示完全不透明) # 设置图形的格式
plt.title('Daily high and low temperatures - 2014', fontsize=24)
plt.xlabel('', fontsize=12)
fig.autofmt_xdate() # 绘制斜的日期标签,以免重叠
plt.ylabel('Temperature (C)', fontsize=12)
plt.tick_params(axis='both', which='major', labelsize=12) # 修改刻度
plt.xticks(dates[::31]) # 显示阿拉斯加锡特卡2014年每日最高气温折线图
plt.show()

Python CSV- 绘制气温图表的更多相关文章
- Python Matplotlib绘制气温图表
代码中数据从 www.wunderground.com/history/ 下载 #coding=utf-8 import csv from datetime import datetime from ...
- Python使用plotly绘制数据图表的方法
转载:http://www.jb51.net/article/118936.htm 本篇文章主要介绍了Python使用plotly绘制数据图表的方法,实例分析了plotly绘制的技巧. 导语:使用 p ...
- 【转】使用Python matplotlib绘制股票走势图
转载出处 一.前言 matplotlib[1]是著名的python绘图库,它提供了一整套绘图API,十分适合交互式绘图.本人在工作过程中涉及到股票数据的处理如绘制K线等,因此将matplotlib的使 ...
- 使用highcharts 绘制Web图表
问题描述: 使用highcharts 绘制Web图表 Highcharts说明: 问题解决: (1)安装Highcharts 在这些图表中,数据源是一个典型的JavaScrip ...
- Python turtle绘制阴阳太极图代码解析
本文详细分析如何使用Python turtle绘制阴阳太极图,先来分解这个图形,图片中有四种颜色,每条曲线上的箭头表示乌龟移动的方向,首先从中心画一个半圆(红线),以红线所示圆的直径作半径画一个校园, ...
- 利用ichart绘制网页图表
首先,最好的教程在这里:ichartjs 有了这个网站,要绘制网页图表简直方便愉快! 接下来说一下使用方法~~~ 进入网站,点击在线设计器 在线设计器的使用方法就不说了,摸索一下就会了!关键在于两个地 ...
- Python CSV模块简介
Table of Contents 1. CSV 1.1. 简介 1.2. 字典方式地读写 1.3. 其它 2. 参考资料 CSV csv文件格式是一种通用的电子表格和数据库导入导出格式.最近我调用R ...
- python+matplotlib 绘制等高线
python+matplotlib 绘制等高线 步骤有七: 有一个m*n维的矩阵(data),其元素的值代表高度 构造两个向量:x(1*n)和y(1*m).这两个向量用来构造网格坐标矩阵(网格坐标矩阵 ...
- python csv 模块的使用
python csv 模块的使用 歌曲推荐:攀登(live) csv 是用逗号分隔符来分隔列与列之间的. 1. csv的写入 1.简单的写入,一次写入一行 import csv with open(& ...
随机推荐
- git merge和git rebase的区别和异同
1.git merge和git rebase作用差不多,都是将远程代码和本地代码合并 2.git merge和git rebase作用差不多,都是将远程代码和本地代码合并 3.git merge ...
- POJ 1279
发现好多半平面交用N^2的增量法都能过诶... #include <iostream> #include <cstdio> #include <cstring> # ...
- BZOJ 3037 创世纪 树形DP
题目大意:给定一张有向图,每一个点有且仅有一条出边,要求若一个点x扔下去,至少存在一个保留的点y,y的出边指向x,求最多扔下去多少个点 首先原题的意思就是支配关系 我们反向考虑 求最少保留的点 要求一 ...
- 三星抛出万亿投资计划 布局四大科技创新领域(5G、人工智能、汽车半导体、生物技术四大新兴产业)
三星近日抛出震惊世人的投资计划,未来三年将在全球范围新增投资180万亿韩元(约1万亿元人民币).新增员工4万名.这是韩国单一企业集团大规模的投资计划. 笔者获悉,三星万亿投资计划主要分两大部分,一是在 ...
- oc2---类
// main.m // 第一个OC类,OC中的类其实本质就是一个结构体, 所以p这个指针其实就是指向了一个结构体,创建一个对象就是创建一个结构体指针, #import <Foundation/ ...
- 高效管理 Elasticsearch 中基于时间的索引——本质是在利用滚动模式做数据的冷热分离,热索引可以用ssd
高效管理 Elasticsearch 中基于时间的索引 转自:http://stormluke.me/es-managing-time-based-indices-efficiently/ 用 Ela ...
- [转载]ROS_LOG保存方法
原文地址:ROS_LOG保存方法作者:东咚... 把Service中的WWW的IP设置为允许日志保存服务器访问的范围 System->Logging,点击 "Actions" ...
- [Pulgin] 前端上传组件Plupload使用指南
我之前写过一篇文章<文件上传利器SWFUpload使用指南>,里面介绍了上传组件SWFUpload的使用方法,但现在随着html5技术的逐渐推广和普及,再去使用以flash为上传手段的SW ...
- FastDFS介绍(非原创)
文章大纲 一.FastDFS介绍二.FastDFS安装与启动(Linux系统)三.Java客户端上传图片四.参考文章 一.FastDFS介绍 1. 什么是FastDFS FastDFS是用C语言编 ...
- C - Elephant(贪心)
Problem description An elephant decided to visit his friend. It turned out that the elephant's house ...