栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

采用python制作温度曲线图(最大、最小、平均)填充颜色

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

采用python制作温度曲线图(最大、最小、平均)填充颜色

采用python制作温度曲线图(最大、最小、平均温度):

本来是我建议朋友在网上找个代码改改用用,但是朋友反馈不太好,加上有些代码写的精妙,但是没有给出示例数据,不利于其他学科领域朋友的直接改进与完善提升。
例如:给出示例代码 以及数据样例 抛砖引玉


1.准备工作:

提示:必要的python编程IDEA环境
例如:
1、 推荐pycharm
2、 安装了 csv numpy matplotlib库
环境安装参考:
https://blog.csdn.net/xieminglu/article/details/109649484
第三方库安装参考:
https://blog.csdn.net/xiao_xian_/article/details/88181845


2 代码块:

不啰嗦直接上代码
详细注释写在代码里面

# coding=UTF-8    
import csv
import numpy as np
from matplotlib import pyplot as plt


with open(r'./temp.csv') as cs:
    read = csv.reader(cs)
    date = next(read)  # 读取第一行,因为数据第一行是年份
    n = 20 #数据是20列 每列是每年的气温数据 
    hs = [[] for _ in range(n)]
    for i in read:
        for q in range(20):
            hs[q].append(int(i[q]))  # 提取csv文件里面的第1-20列数据

    avg = []
    max = []
    min = []
    for i in range(20):
        avg_n = np.mean(hs[i])#求平均 放在列表
        avg.append(avg_n)

        max_n = np.max(hs[i])#求最大 放在列表
        max.append(max_n)

        min_n = np.min(hs[i])#求最小 放在列表
        min.append(min_n)

plt.rcParams['font.sans-serif'] = ['SimHei']#显示中文
plt.rcParams['axes.unicode_minus'] = False
# print( header)
plt.xlabel("年份信息")
plt.ylabel("温度:℃")
plt.plot(date, max, c='yellow',label = "最高气温")
plt.plot(date, min, c='red',label = "最低气温")
plt.plot(date, avg, c='blue',label = "平均气温")


plt.fill_between(date,max, avg,facecolor='red',interpolate=True,alpha=0.3)#区域填充
plt.fill_between(date,avg, min,facecolor='skyblue',interpolate=True,alpha=0.3)#区域填充

plt.legend(loc='upper left')
plt.xticks(rotation=45) #45为旋转的角度 横着放不下
plt.show()


3.数据样式与输出示例:

提示:没有数据直接谈代码是耍流氓行为

数据呀大概长这样的的 第一行是年份 每一列是对应的温度 这个吧 爬虫呀 有些网站呀 甚至有些地图软件都有的

最后的结果是这样的:

例如:
大概就是这样了 写在最后了 遇到需要解决的问题先整理起来思路 再开始根据思路按照步骤 查询资料 最后解决问题 复盘思考 也是收获了~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/664654.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号