APP下载

北京冬奥会、杭州亚会运天气助手微信小程序的设计

2019-01-06李成渊彭伟明俞越

无线互联科技 2019年21期
关键词:微信小程序

李成渊 彭伟明 俞越

摘   要:本系统主要针对北京冬奥会和杭州亚运会的举办地,创造性地利用大数据环境下的公开信息,在环境大数据开放平台总共包含986 116 523的存储记录中,根据项目需求,筛选出435条记录,包含16 965个有效信息,利用52条折现、52个气泡以及52个柱形便表示出两大赛事历史天气及空气质量的数据性参考。利用牛刀云设计平台,辅以两大赛事主要介绍以及气候汇总,最终以微信小程序的形式发布。

关键词:Python;微信小程序;界面布局

2022年北京冬季奥林匹克运动会由北京市和张家口市联合举行。北京朝阳、海淀和房山地区将承办所有冰上项目,北京市的石景山区和张家口崇礼等地区将承办所有的雪上项目。

2022年杭州亚运会将于2022年9月10日至25日举行,以杭州为主办城市,同时辐射至宁波、金华、绍兴、湖州其他省内城市。

气象条件与体育运动成绩关系十分密切。湿度对人体的影响主要是在热代谢和水盐代谢方面[1],湿度太大运动员会感到烦恼郁闷,湿度太小又有干渴烦躁的感觉。良好的气象条件和相对完善的气息服务也是冬奥会、亚运会成功举办的关键因素之一。

本系统主要对北京、张家口冬奥会和杭州亚运会过往年份中比赛对应时间的气温、湿度和PM2.5值等要素进行统计分析,并利用微信小程序[2]呈现这两大赛事在各举办地区的历史同期数据,让参赛人员和观众掌握当地动态,为赛事举办期间的气候条件等做好信息参考服务。

1    开发环境简介

本系统主要采集环境大数据开放平台http://www.envicloud.cn/home?title=0中的公开数据,数据主要来自于“指定日期历史天气”和“城市指定日期空气质量”的有关历史数据。在环境云的采集过程中使用了Python3.7。

1.1  Python

Python是一种计算机程序设计语言,是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多地被用于独立的、大型系统的开发。

Python提供应用程序编程接口(Application Programming Interface,API),能方便地进行系统维护和管理,Linux下标志性语言之一是很多系统管理员理想的编程工具。

1.2  环境大数据开放平台

环境大数据开放平台是一个专注于提供稳定、便捷的综合环境数据服务的平台,收录专业数据源(国家环保部数据中心、美国全球地震信息中心等)所发布的各类环境数据,接收云创自主布建的各类环境监控传感器网络(包括空气质量指标、土壤环境质量指标检测网络)所采集的数据,结合相关数据预测模型生成的预报数据,依托数据托管服务平台万物云所提供的数据存储服务,推出了一系列功能丰富、便捷易用的综合环境数据REST API,配合详尽的接口使用帮助,为环境应用开发者提供丰富,可靠的气象、环境、灾害以及地理数据服务。此外,环境云还为环境研究人员提供了历史数据报表下载,并向公众展示环境实况[3]。

1.3  牛刀云

牛刀云开发支持小程序制作、电商模板、公众号等应用开发,是服务于初中级开发者的课程,是从零开始讲解快速开发小程序、制作电商模板的开发工具平台。牛刀云是WeX5,BeX5在云时代的新一代产品,提升了WeX5和BeX5的核心理念和关键优点,包含WeX5和BeX5几乎全部能力,保持框架和组件源码开放的好传统,并做了一些重大的突破。

2    系统详细设计

2.1  数据准备

注册环境大数据开放平台之后,账户将获得用户私钥,为访问其接口做好识别准备。使用Requests库工具,以json格式获得对应数据。从环境云平台所采集到的数据以文本形式体现。该处理过程中,所采集文件主要调用json.loads方法,完成数据字典类型解析,以便于系统进行后期读取与检索。

由于环境云为保存所有城市的所有历史数据,会产生空集,通过Python对数据进行筛选后,可以形成有效的数据集合。

天气数据抓取方面,本项目主要使用jmespath中search方法进行,而最终作图需要多数据读取,所以项目考慮采用list类型来保存每个数据。

为使采集到的数据最终可视化,系统导入matplotlib库, 完成可视化图形绘制,系统导入matplotlib库, 完成可视化图形绘制。

(1)气温折线图绘制:使用plot方法进行折线绘制,list10为x轴刻度,list1,list2,list3,list4为y轴刻度之前保存的数据,绘制折线图。

(2)湿度气泡图绘制:为显示湿度信息,项目采用Matplotlib库,进行气泡图绘制,使用scatter方法,其中list10为x轴刻度,list1为y轴刻度,s为气泡大小,这里直接将y轴数据放大后作为s值。

对比两个城市,可以看出南方城市的湿度相对较高,由于降水量大,杭州的湿度一直保持在高点,而北京的湿度一直偏低,说明北方的降雨量较少。

(3)条形图绘制:为表示各城市历史日期PM2.5值的对比,项目使用bar绘制方法进行比对,期中list10为x轴刻度,list1为y轴刻度,alpha设置透明度。

根据网络公开数据,本系统分析北京冬奥会以及杭州亚运会所有比赛项目所涉及的13个运动场馆的地理信息,并形成小程序页面分布作为主要参考,其分布如图1所示。

2.2  展示项目主页面

新建页面“主页面”将导航栏命名为“2022年,北京冬奥、杭州亚运气候指南”背景色采用#B6D7A8、黑色字体,在页面上采用了3个视图布局组件(view视图容器)构建了视图1、视图2、视图3这3个部分。在视图1中使用幻灯片组件,添加4个滑块视图加载了4张有关于北京冬奥会和杭州亚运会的宣传图片,为其设置自动轮播且衔接轮播图片。在视图2中使用了8个行列布局形成两个按钮和6个文本框,并且在文本框里使用内容工具“文本”写入“北京冬奥 Olympic Games >”“杭州亚运Asian Games >”字样,设定文本框和字体颜色分别为蓝色和红色。在视图3中使用3个行列布局形成3个居中的文本框格式,在文本框中添加字样。

2.3  北京冬奥会页面详细设计

在主页下新建一个子页“冬奥会”,在页面上用3个视图布局组件(view视图容器)将页面分为视图1、视图2、视图3这3个部分。视图1中使用幻灯片内容组件,添加3个滑块项目,加载了“2022年北京冬季奥运会图标”和两张冬奥宣传图,设其为自动轮播且轮播图片。视图2中添加文本框使用内容工具“文本”写入对2022年北京冬季奥运会的介绍。添加两个行列布局形成两个文本框格式,设定属性居中,边框颜色为#134f5c。在第一个文本框中输入“开闭幕式”字体,颜色为蓝色,设定事件为打开子页“朝阳”。第二个文本框中输入“展示中心”字体颜色为#134f5c,设定事件为打开子页面“石景山”。在视图3中添加15个图片组件,格式大小为69×69 px。在图片组件中插入冬奥会各个比赛项目的图标,分别设定事件为打开每个项目所对应场馆的子页。

在主页下新建一个子页“北京”,在页面上用6个视图布局组件(view视图容器),将页面分为视图1、视图2、视图3……视图6这6个部分。视图1中使用幻灯片内容组件,添加3个滑块项目加载了北京地区的3个比赛场馆图,设其为自动轮播且衔接轮播图片。视图2中添加文本组件介绍北京地区所举办的赛事项目以及北京的气候、人文等资料。视图3中插入图片组件将“北京近三年九月份气温变化曲线图”导入,图片格式默认,图片像素为340×240。视图4中插入文本对于该气温曲线图的详细分析。视图5插入图片组件,将“北京近三年九月份湿度均值对比气泡图”导入,图片像素为340×240。视图6中插入文本对于该气泡图的详细分析。

类似北京主页面,新建一个子页“朝阳”,海淀、石景山、崇礼、张家口、房山、延庆等页面,完成各城市历史同期气候条件的展示,如图2所示。

2.4  杭州亚运会页面详细设计

在主页下新建一个子页“亚运会”,在页面上用3个视图布局组件(view视图容器)将页面分为视图1、视图2、视图3这3个部分,视图1中使用幻灯片内容组件,添加3个滑块项目加载了“2022年杭州亚运会图标”和两张杭州亚运宣传图,设其为自动轮播且衔接轮播图片。视图2中添加文本框使用内容工具“文本”寫入对杭州亚运会的介绍。添加一个“行列”布局形成一个文本框格式,设定属性居中,边框颜色为#134f5c。在第一个文本框中输入“开幕式、闭幕式”字体颜色为#134f5c,设定事件为打开子页“杭州”。在视图3中添加56个图片组件,格式大小为43×43 px。在图片组件中插入亚运会各个比赛项目的图标,分别设定事件为打开每个项目所对应场馆的子页。

在主页下新建一个子页“杭州”,在页面上用8个视图布局组件(view视图容器)将页面分为视图1、视图2、视图3……视图8这8个部分。视图1中使用幻灯片内容组件,添加3个滑块项目加载了杭州市的3个比赛场馆图,设其为自动轮播且衔接轮播图片。视图2中添加文本组件介绍杭州地区所举办的赛事项目以及杭州的气候、人文等资料。视图3中插入图片组件将“杭州近三年九月份气温变化曲线图”导入,图片格式默认,图片像素为340×240。视图4中插入文本对于该气温曲线图的详细分析。视图5插入图片组件,将“杭州近三年九月份湿度均值对比气泡图”导入,图片格式默认,图片像素为340×240。视图6中插入文本对于该气泡图的详细分析。视图7插入图片组件将“杭州近三年九月份PM2.5均值对比柱状图”导入,图片格式默认,图片像素为340×240。视图8中插入文本对于该柱状图的详细分析。如图3所示。

同于杭州赛区页面,新建一个子页金华、象山、德清、宁波页面,完成各城市历史同期气候条件的展示。

3    结语

本系统创造性地利用大数据环境下公开信息,在环境大数据开放平台总共包含986 116 523条存储记录中,根据项目需求,筛选出435条记录,包含16 965个有效信息,利用52条折现、52个气泡以及52个柱形便表示出两大赛事历史天气及空气质量的数据性参考。

采集到我国未来3年内将举办两项重大体育赛事—北京冬季奥运会和杭州亚运会各运动场馆所在位置的天气与控制质量数据,本项目通过微信小程序设计来进行数据信息的呈现,以达到有效、便捷之效果。

[参考文献]

[1]赵杰修,冯连世.高温高湿环境与运动性疲劳[J].中国运动医学杂志,2008(2):238-242.

[2]张露.微信小程序对新闻类APP的影响研究[J].传播力研究,2018(18):19-20.

[3]陆卫荣,张悦,冒立鑫,等.基于微信小程序的气象服务系统[J].电脑编程技巧与维护,2019(6):55-58.

Design of weather assistant WeChat program for Beijing

Winter Olympics and Hangzhou Asian Games

Li Chengyuan, Peng Weiming, Yu Yue

(Wuxi City College of Vocational Technology, Wuxi 214000, China)

Abstract:This system mainly aims at the hosting place of Beijing Winter Olympics and Hangzhou Asian Games, creatively utilizes the open information under the big data environment. In the open platform of big data environment, there are 986 116 523 storage records. According to the project requirements, 435 records are screened out, including 16 965 valid information. Using 52 discounts, 52 bubbles and 52 columns, the history days of the two major events can be expressed. Data reference of air and air quality. Using Niu Daoyun design platform, supplemented by two major events and climate summary, it was finally released in the form of WeChat applet.

Key words:Python; WeChat applet; interface layout

猜你喜欢

微信小程序
当图书馆遇上微信小程序