- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于天⽓预报的数据分析与可视化课程设计 (Python实现)
转载⼀篇基于天⽓预报数据可视化项 ⽬的原创 章 :,已征得作者同意~
在此基础上,本数据分析与可视化课程设计是对原 章中的部分成果进⾏了改进和优化。
改进与优化之处在于:
(1)精⼼配⾊,可视化效果更佳。
(2)多 件结构, 件之间的层次更加清晰。
(3)路径地址采⽤相对路径,可移植性⾼。
(4)增加了主菜单,⽅便选择调⽤需要执⾏的功能。
(5)对风向雷达图贴上了⼋个⽅向的标签,并且使⽤不同的随机颜⾊对⼋个⽅向进⾏着⾊,⽅便区分。
(6)增加动态效果,对 “XX变化图”增加了运⾏时动态⽣成的效果,对 “变化”的感知将更加深刻,具体原理见chart.py 件。
(7)对温度与相对湿度的相关性分析增加了求解⽪尔逊相关系数 (定义了⼀个coefficient函数求解)和求解温度-相对湿度两个变量之间
的线性回归⽅程 (利⽤机器学习库sklearn中的LinearRegression求解),并将相关系数和拟合曲线展⽰。
⼀、主要 件结构
说明:
① dataset 件夹 :存放天⽓数据的csv 件。
② main.py :调⽤dataset中的数据和src中的源代码,得出可视化图⽚,然后保存于result 件夹,它是程序运⾏⼊⼝。
③ result 件夹 :存放运⾏完成后的可视化图⽚。
④ src 件夹 :存放数据分析与可视化的源代码。
⑤ 执⾏main.py后,XX变化图的可视化将会是⼀个动态变化图展⽰,但所有保存的可视化图⽚都是静态的.png图⽚。
⼆、具体 件细节
(1)main.py源代码 :
#main.py是启动程序,负责启动和调⽤相应的功能,并导⼊数据集
from src import dataprocess
import pandas as pd
import matplotlib.pyplot as plt
import os
from os import path
def main() :
#解决基本显⽰问题
plt.rcParams[font.sans-serif] = [SimHei] # 解决中 显⽰问题
plt.rcParams[axes. nicode_ min s] = False # 解决负号显⽰问题
#原始数据集导⼊
localpath=path.dirname(__file__)
datapath=os.path.join(localpath,dataset/weather1.csv)
data = pd.read_csv(datapath, encoding=gb2312)
#数据分析与可视化实现
key=1
print(\n请选择你所需要的分析: \n0、温度变化图\n1、相对湿度变化图\n2、温度与相对湿度分析图\n3、降⾬量变化图\n4、风向雷达图)
#多功能数据分析与可视化的选择
#try -excep t结构避免⽤户输⼊不正确或恶意输⼊
while 1:
try :
i=int(inp t(输⼊需要查看的图表(输⼊-1退出) :))
break
except :
print(输⼊有误,请重新输⼊)
print(\n请选择你所需要的分析: \n0、温度变化图\n1、相对湿度变化图\n2、温度与相对湿度分析图\n3、降⾬量变化图\n4、风向雷达图)
#选择对应功能后,调⽤对应函数
#while循环实现多次查看不同的功能
while key==1:
if(i==-1) :
key=0
break
while i!=-1:
if i==0:
dataprocess.temperat re(data)#温度变化曲线
break
elif i==1:
dataprocess.h midity(data)#
文档评论(0)