Python程序设计#5作业

Python程序设计#5作业 作业题目 基于#3作业,#4作业获取的No_Smoothing,Lowess数据项,在同一个图上分别绘制出折线图(No_Smoothing)和平滑线图(Lowess)

本文包含相关资料包-----> 点击直达获取<-------

Python程序设计#5作业

作业题目

基于#3作业、#4作业获取的No_Smoothing、Lowess数据项,在同一个图上分别绘制出折线图(No_Smoothing)和平滑线图(Lowess)。绘制结果对照参考图片(test.png)。

作业内容

程序源代码嵌入下方的code block中。

```python import aiohttp import asyncio import argparse import json import xml.etree.ElementTree as xmlet from matplotlib import colors import matplotlib.pyplot as pl import numpy as np import statsmodels.api as sm lowess = sm.nonparametric.lowess

async def main(host,port,start,end,fmt): url=f'http://{host}:{port}/{fmt}/start/{start}/end/{end}' async with aiohttp.ClientSession(trust_env=True) as session: async with session.get(url,verify_ssl=False) as response: print("Status:", response.status) print("Content-type:", response.headers['content-type']) text = await response.text() temper=list() if fmt=='csv': lines=text.split('\n') for line in lines: if line=="": continue words=line.split(',') temper.append({'year':words[0],'temperature':words[1],'lowess':words[2]})

        elif fmt=='xml':
            root=xmlet.fromstring(text)
            for child in root:
                temper.append({'year':child[0].text,'temperature':child[1].text,'lowess':child[2].text})
        elif fmt=='json':
            temper=json.loads(text)

        for words in temper:
            print('year:{0} temperature:{1} lowess:{2} '.format(words['year'],words['temperature'],words['lowess']))


        xList = list()
        yList = list()
        for item in temper:
            xList.append(item['year'])
            yList.append(item['temperature'])
        x=np.array(xList)
        y=np.array(yList)
        d = lowess(y,x,frac=10/len(temper))

        print(d[:,1])

        pl.clf()
        pl.grid()
        pl.xlim(1880,2020)
        pl.ylim(-0.5,1.5)
        pl.plot(x,y,label="no_smoothing",color="silver")
        pl.plot(x,d[:,1],'k',label="lowess")
        pl.legend()
        pl.show()

loop = asyncio.get_event_loop()

loop.run_until_complete(main())

if name ==' main ': parser = argparse.ArgumentParser(description='world temperature') parser.add_argument('--start',dest='start',type=int,default=1880) parser.add_argument('--end',dest='end',type=int,default=2020) parser.add_argument('--fmt',dest='fmt',default='json') parser.add_argument('host') parser.add_argument('port') args=parser.parse_args() print(f'{args}')

asyncio.run(main(args.host,args.port,args.start,args.end,args.fmt))

```

代码说明

主要画图部分代码为

python pl.clf() pl.grid() pl.xlim(1880,2020) pl.ylim(-0.5,1.5) pl.plot(x,y,label="no_smoothing",color="silver") pl.plot(x,d[:,1],'k',label="lowess") pl.legend() pl.show()

通过第四次实验的命令语句运行

python python5.py 127.0.0.1 8000

运行后即可以得到平滑与非平滑的图

参考文献

  • 基于web的旅游服务平台的设计与实现(内蒙古大学·张凡)
  • 基于B/S架构的酷跑社区系统的设计与实现(内蒙古大学·张晓乐)
  • 基于信息化服务的湖南电大课程教学系统的设计与实现(电子科技大学·龙昱)
  • C语言程序设计精品课网站的设计与开发(大连理工大学·朱志刚)
  • 基于B/S架构的酷跑社区系统的设计与实现(内蒙古大学·张晓乐)
  • 基于J2EE平台的作业、考试系统设计与实现(山东大学·刘萍)
  • 基于SSH架构的个人空间交友网站的设计与实现(北京邮电大学·隋昕航)
  • 基于SSH架构的个人空间交友网站的设计与实现(北京邮电大学·隋昕航)
  • 基于JSP的校园网站的设计与实现(吉林大学·张帆)
  • 基于.NET自定义控件的社区网站系统研究与实现(武汉理工大学·刘亚)
  • 软件开发进度信息管理系统的设计与实现(东北大学·王云松)
  • 基于web的旅游服务平台的设计与实现(内蒙古大学·张凡)
  • 基于信息化服务的湖南电大课程教学系统的设计与实现(电子科技大学·龙昱)
  • 基于J2EE的远程网络教育系统研究与实现(电子科技大学·陈南荪)
  • 基于J2EE的手机综合网站的设计与实现(吉林大学·宋微)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:代码工厂 ,原文地址:https://m.bishedaima.com/yuanma/36026.html

相关推荐

发表回复

登录后才能评论