Python春晚数据分析.doc

上传人:yanj****uan 文档编号:74461711 上传时间:2023-02-26 格式:DOC 页数:3 大小:530.50KB
返回 下载 相关 举报
Python春晚数据分析.doc_第1页
第1页 / 共3页
Python春晚数据分析.doc_第2页
第2页 / 共3页
点击查看更多>>
资源描述

《Python春晚数据分析.doc》由会员分享,可在线阅读,更多相关《Python春晚数据分析.doc(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Python春晚数据分析import xlrdimport numpy as npimport matplotlib.pyplot as pltimport pandas as pdfrom flask import Flask, jsonify, render_template, requestfrom pyecharts import *#pyecharts 0.5.0from imageio import imreadapp = Flask(_name_)plt.rcParamsfont.sans-serif=SimHei# 设置中字体class Exc():def _init_(sel

2、f,filePath,sheetName):self.data=xlrd.open_workbook(filePath)# 件路径self.table=self.data.sheet_by_name(sheetName)#excel 中的表名# 获取第列的key值self.keys = self.table.row_values(0)# 获取总数self.rowNum = self.table.nrows# 获取总列数self.colNum = self.table.ncolsdef draw(self,):cls=#以年份为单位,计数各类型节数量ycls=#存放单独年给类型节数量,循环清空y

3、ears=1983# 初始年份1983,后随读取年份变化zoncate=# 各类型节总数量rna=#存放所有演员名单rname=# 存放所有演员及其登场次数rnamel=#list 存放排序后的演员名单zoncatel=#list存放排序前后节名单if self.rowNum=1:print( 数据可取)else:r=j=1for i in range (self.rowNum-1):s=values=self.table.row_values(j)# 换读取存数据#print(values)for x in range(self.colNum):# 存各列数据sself.keysx=valu

4、esxif int(sself.keys3)!=years:# 判断是否为同年节#print(years, 年各种节数:,cls)years=int(sself.keys3)cls=rna=sself.keys2.split( 、)#对单个节的每个演员分开计数for i in rna:try:rnamei+=1# 记表演名单及其出场次数except:rnamei=1try:clssself.keys0+=1# 计各种节个数except:clssself.keys0=1try:try:zoncatesself.keys0+=1# 各节类型总表演次数except:zoncatesself.keys

5、0=1j+=1#数加r.append(s)yclsyears=clsrname.pop()rnamel=zip(rname.values(),rname.keys()# 对次字典进 键、值 分包,值放前zoncatel=zip(zoncate.values(),zoncate.keys()# 对类次字典进 键、值 分包,值放前rnamel=sorted(rnamel)# 从到以包中在前的登场次数values排名#print(rnamel)zoncatel=sorted(zoncatel)#print( 所有的节种类次数:,zoncatel)#-rna=rnum=rna2=rnum2=caten

6、a=catenum=inyear=1983self.yearpie=yearsyearslist=list(range(1983,years+1)# 创建个年份列表 作为折线图x轴for i in rnamel-10:rna.append(i1)rnum.append(i0)barr = Bar( 排名前的演员的登场次数)barr.add( 演员, rna, rnum, mark_line=average,title= 排名前的演员的登场次数)#bar.render( 排名前的演员的登场次数.html)for i in rnamel:rna2.append(i1)rnum2.append(i0

7、)rna2.remove(1)rnum2.remove(1)cy=WordCloud( 演员词云)cy.add(,rna2,rnum2,shape=circle)cy2=WordCloud( 节词云)cy2.add(,list(zoncate.keys(),list(zoncate.values()for i in zoncatel-10:catena.append(i1)catenum.append(i0)line=Line(n 排名前节的每年表演次数变化)for i in catena:plty=radern=0for j in yearslist:try:plty.append(ycls

8、ji)except KeyError:plty.append(0)#print(plty)#radern0=pltyline.add(i, yearslist, plty, mark_point=max, min,mark_line=average)#print(ycls)piez=Pie(n1983-2018 年各类节表演次数饼图)piez.add(,catena,catenum, is_more_utils=True)self.yclspie=ycls#-page=Page()page.add(cy)page.add(cy2)page.add(barr)page.add(line)page

9、.add(piez)page.render(templates/ 历年春晚数据图表.html)def drawpie(self,ye):inyear = 1983pie = Pie(nnnn 年各种节数对.format(ye)cnum = list(self.yclspieye.values()cname = list(self.yclspieye.keys()pie.add( 年各种节数对.format(inyear), cname, cnum, radius=30, 75, is_more_utils=True)pie.render(templates/ 年各种节数对.html.forma

10、t(ye)app.route(/home)def home():data.draw()return render_template( 历年春晚数据图表.html)app.route(/index)def index():return render_template(index.html)app.route(/year, methods=GET, POST)def getValues():yearslist = list(range(1983, 2019)text = request.form.get(year)text = int(text)if text in yearslist:data.drawpie(text)return render_template( 年各种节数对.html.format(text)else:return 不存在if _name_=_main_:filePath=春晚节单.xlsxsheetName=春晚节单data=Exc(filePath,sheetName)#print(data.dict_data()#data.draw()app.run(host=127.0.0.1, port=8080, debug=True)#data.drawpie()

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁