版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于Flask和React睡眠质量分析平台的设计与开发摘要随着社会节奏的加快,人们的生活压力也在不断增加,越来越多的人出现了睡眠问题,对睡眠质量进行分析显得尤为重要。睡眠质量分析平台的开发为用户提供了一个全面、科学的睡眠健康管理系统。通过用户数据反馈为平台提供了直观的睡眠状况反馈,帮助他们更好地了解自己的睡眠习惯和问题所在,也能更好地去了解自己每天的睡眠时长和饮食规律。平台还具备问题调研、数据分析和可视化功能,将各个睡眠指标分析出来为用户提供个性化的睡眠改善建议,用户也可以查看自己过去某个时间段的睡眠数据,对比历史数据了解自己近期睡眠情况,通过观看健康教学视频,学习相关知识,从而有效提升用户的睡眠质量和整体健康水平。睡眠质量分析平台基于Web技术进行开发,运用Flask和React框架,使用Pycharm作为开发环境,利用MySQL数据库高效存储数据,实现了用户反馈管理、饮食数据分析、体重日志分析、睡眠综合分析、清醒次数分析、深睡时长分析、浅睡时长分析、快速眼动分析、健康教学分析、身高体重管理、睡眠信息管理和饮食管理等业务功能模块。该平台的开发不仅填补了市场上睡眠健康管理的空白,还推动了健康科技的进步,并且用户可以实时的了解自己的睡眠情况。平台所积累的大量睡眠数据也为睡眠科学研究提供了宝贵资源,有助于进一步揭示睡眠与人体健康之间的复杂关系,为未来的睡眠健康产品和技术创新奠定基础。关键词:睡眠数据分析;分析平台;健康管理;Python
ABSTRACTWiththeaccelerationofsocialpaceandtheincreasinglifepressure,moreandmorepeopleareexperiencingsleepproblems,makingitparticularlyimportanttoanalyzesleepquality.Thedevelopmentofasleepqualityanalysisplatformprovidesuserswithacomprehensiveandscientificsleephealthmanagementsystem.Throughuserdatafeedback,theplatformoffersanintuitivereflectionofsleepconditions,helpingthembetterunderstandtheirsleephabitsandissues,aswellastheirdailysleepdurationanddietarypatterns.Theplatformalsofeaturesproblemsurveys,dataanalysis,andvisualizationfunctions,analyzingvarioussleepindicatorstoprovidepersonalizedsleepimprovementsuggestions.Userscanalsoviewtheirsleepdatafromaspecificperiodinthepast,comparehistoricaldatatounderstandtheirrecentsleepstatus,andlearnrelevantknowledgebywatchinghealtheducationvideos,therebyeffectivelyimprovingsleepqualityandoverallhealth.ThesleepqualityanalysisplatformisdevelopedbasedonWebtechnology,usingFlaskandReactframeworks,withPyCharmasthedevelopmentenvironmentandMySQLdatabaseforefficientdatastorage.Itimplementsbusinessfunctionmodulessuchasuserfeedbackmanagement,dietarydataanalysis,weightloganalysis,comprehensivesleepanalysis,wake-upfrequencyanalysis,deepsleepdurationanalysis,lightsleepdurationanalysis,rapideyemovementanalysis,healtheducationanalysis,heightandweightmanagement,sleepinformationmanagement,anddietarymanagement.Thedevelopmentofthisplatformnotonlyfillsthegapinsleephealthmanagementinthemarketbutalsopromotestheadvancementofhealthtechnology.Moreover,userscanreal-timemonitortheirsleepstatus.Thelargeamountofaccumulatedsleepdataalsoprovidesvaluableresourcesforsleepresearch,helpingtofurtherrevealthecomplexrelationshipbetweensleepandhumanhealth,layingthefoundationforfuturesleephealthproductsandtechnologicalinnovations.Keywords:SleepDataAnalysis;AnalysisPlatform;HealthManagement;Python目录TOC\o"1-3"\h\u第一章引言 第一章引言1.研究背景及意义1.1研究背景针对于现目前人们的睡眠质量问题凸显,对人们的生活影响越来越大,开发一个睡眠质量分析平台能更好的帮助人们去管理和控制睡眠。2023年发布的《中国睡眠大数据报告》显示,中国成年人失眠发生率高达38.2%,存在睡眠障碍的人数高达5.1亿。这说明睡眠质量越来越影响人们的身体健康,该平台从问卷调查调查来确定人们的睡眠情况,通过调查结果来对用户提供有针对性的建议和指导,用户可以其健康教学指南来进行相应的学习。这一平台的开发对人们来说显得格外重要,它能提高人们重视睡眠问题,也能为后续的科学研究提供准确的数据支持。1.2研究意义睡眠质量分析平台的设计与开发有很大的意义。在数据层面,我们得到的数据都是来自用户最真实的生活和实践,对数据的真实性提供了强有力的保障,可以为后续的睡眠研究提供相应的支持和经验。对于分析的结果,开发的平台可以对决策者提供相应的理论,促进后续的决策实施。在现实生活意义上,该平台主要是针对目前社会上存在睡眠质量问题的人,并且越来越多的人存在睡眠质量问题,通过他们提供的数据,分析导致睡眠质量问题的具体因素,针对他们存在的问题,准确的制定出建议策略,这能够提高我们的生活品质,对宣传健康睡眠理念有很大的推进作用,还可以促进用户们的健康水平提升。2.国内外研究现状2.1国内研究现状当下我国的社会经济发展迅速,相应的生活节奏也快了很多,工作压力在不断增加,越来越多人出现睡眠质量方面的问题,所以我们必须加快对睡眠质量分析平台的设计,以满足人们的需求。对比以前的数据。国人的睡眠平均时长缩短了近1.5个小时,这直接说明现在存在睡眠质量的人需要依靠平台或者科技的手段来提升自己的睡眠质量。使用一些大数据分析、AI算法、人工智能相关的深度学习和机器学习算法,现如今睡眠质量分析在国内取得了不错的成绩,包括一些监测设备、智能手环、健康睡眠App等等。这些睡眠质量分析的产品结合用户日常的生活需求,提出个性化的睡眠建议以及健康指导。2.2国外研究现状相比于国内的睡眠质量分析平台,国外的市场更为成熟。根据数据显示,睡眠质量分析的相关产品的市场规模已经达到数10亿美元,并且在未来很长一段时间都将保持持续增长的趋势。因为国外的科学技术和医疗水平都领先于国内,这在一定程度上为他们的睡眠质量分析设备提供了理论和技术支持,国外在AI与物联网的融合方面取得了不错的成效,对于他们开发睡眠质量分析平台可以提供更为准确的数据,使他们的睡眠质量分析平台更加智能化和现代化。例如多导睡眠图系统(PSG)等高端医疗设备在睡眠医学实验室和临床诊断中发挥的重要作用。并且国外睡眠质量分析平台相关的企业非常注重联合发展。他们之间深入学习,共同推动产品进步和市场拓展。3.本文的主要研究内容睡眠质量分析平台的设计与开发设计并开发实现了反馈管理、饮食数据分析、体重日志分析、睡眠综合分析、清醒次数分析、健康教学分析、身高体重管理、睡眠信息管理和饮食管理等业务功能模块。睡眠质量分析平台一共化分为6个部分,详细描述如下所示。第一章,绪论:睡眠质量分析平台平台介绍了系统的背景。国内外研究的现状、技术、目的与意义。第二章,相关理论与技术:针对系统核心技术进行详细介绍。第二章,需求分析:对系统的可行性分析、系统功能模型和业务流程进行介绍。第三章,系统的总体设计:对个人睡眠质量分析平台进行了系统原则介绍和数据库介绍。第四章,系统的详细设计:详尽的展示了个人睡眠质量分析平台的所有功能及技术流程介绍。第五章系统测试:睡眠质量分析平台平台测试结果的编写和记录。4.本文设计思路睡眠质量分析平台的设计与开发的功能主要包括问卷调查、选择题,填空题和判断题调研、饮食数据分析、体重日志分析、睡眠综合分析,其中睡眠综合分析包括了清醒次数、快速眼动、深睡时长和浅睡时长的分析,全方位的涵盖用户需求。系统用Pycharm开发,存储用户资料数据则采用MySql数据库,以MySql存储存储用户相应的数据,可以保证使用者的数据安全和系统的稳定性。系统的设计主要分为六个部分,并且每个部分关联性强,都围绕服务用户,帮助用户解决睡眠问题来展开。通过各个板块相互联系,为用户提供一些精准的建议。创新的开发了个性化的健康教学指导,各个板块的设计初衷都是建立在服务用户,帮助用户精准的解决睡眠质量问题上,提升用户的生活质量以及健康水平。在系统的设计过程中非常注重系统各个界面的简洁性以及功能的实用性,用户提供一个完美的健康管理服务。图1-1项目设计图
第二章相关技术介绍1.Python库在构建睡眠质量分析平台时,Python的数据处理技术发挥了核心作用,尤其是Pandas、NumPy和SciPy等库。Pandas凭借其高效的数据结构(如DataFrame)和丰富的数据操作功能,简化了数据清洗、转换和聚合的过程。NumPy则以其强大的数组运算能力和数学计算能力,在数据的预处理和统计分析有着扎实的功底。SciPy库则提供了丰富的科学计算算法,如统计分析、优化和插值等,为深度睡眠数据分析提供了有力支持。这些库的结合使用,不仅显著提升了数据处理的精度和效率,还降低了开发成本,使研究人员和开发者能够更专注于数据分析和算法优化。2.Web开发技术该平台基于Web技术开发,充分利用了Web技术的跨平台、易访问和可扩展性优势。用户可以通过Web浏览器随时随地对系统进行访问和操作,无需安装额外的软件。系统前端采用React框架设计,带来了高效、灵活和可维护的代码结构。React的组件化开发方式提高了开发效率和代码质量,其虚拟DOM技术和响应式更新机制则提升了用户体验。CSS布局和JavaScript脚本的编译和执行,为系统提供了丰富的交互功能和动态效果,进一步增强了系统的实用性和用户体验。3.Flask框架技术系统采用Flask框架集成睡眠质量分析平台,显著提升了开发效率和集成便利性。Flask作为一个轻量级的Web框架,提供了简洁的API和灵活的结构,使得开发者能够快速构建出功能完备且易于维护的Web应用。在Flask的助力下,平台能够轻松集成Pandas、NumPy等数据处理和算法模块,实现高效的睡眠数据分析和可视化。此外,Flask还提供了丰富的扩展和插件,如数据库集成、用户认证等,进一步简化了开发流程。Flask框架的灵活性和可扩展性为平台的未来发展奠定了坚实基础,使其能够轻松应对市场需求的变化,及时调整和优化功能。4.Pycharm编译器PyCharm编译器集成Python程序的优点众多。它提供智能代码补全、语法高亮和错误检查,显著提升编码效率。PyCharm还支持代码重构、调试和测试,助力开发者轻松管理和优化代码。其内置的项目管理工具,方便组织文件与依赖。另外,PyCharmy也是一个功能非常丰富的编译软件,方便我们多人合作进行程序的开发,对于数据的开发和Web网页制作也有专门的技术,PyCharm是Python的一个非常优秀的开发环境。5.系统开发环境本系统开发环境配置了多种专业工具与框架,以确保项目的高效运行与优质开发。后台编译器采用Pycharm2023.3,提供强大的代码编辑与调试功能,支持多种编程语言,极大提升了开发效率。文本编译器选用Notepad7.5.5,作为轻量级文本编辑器,便于快速编写与修改代码。Navicat10.5作为数据库访问工具,简化了对MySQL数据库的操作,优化了数据管理与维护流程。后端技术采用Python3.11,以其简洁的语法与丰富的库资源,保障了系统的稳定与可扩展性。前端框架选用React2.0,实现了组件化的开发模式,提升了界面的响应速度与用户交互体验。后台框架则采用Flask1.6,以其轻量级与易用性,为系统提供了灵活的路由与模板渲染功能。最后,Nginx1.6作为发布服务器,确保了系统的稳定运行与高效访问。表2-1系统开发环境表配置项目版本号备注Pycharm2023.3后台编译器Nodepad7.5.5文本编译器Navicat10.5数据库访问工具Python3.11后端技术React2.0前端框架Flask1.6后台框架Nginx1.6发布服务器
第三章需求分析1.可行性分析1.1经济可行性从经济角度来看,开发睡眠质量分析平台的优势很大。首先作为学生,在学校里面有很多的资源,可以在实验室进行开发,遇到难题可以向导师请教,这些都可以为系统开发节省很多成本。作为学生,同学之间的相互沟通可以让开发的效率变得更高,这也减少了项目开发的时间投入以及经济投入,系统成功开发并且推向市场,将有望为睡眠存在问题的用户带来改善效果,从而获得经济收益,因此在校开发睡眠质量分析平台在经济上是可行的,一旦开发成功就可以获得较高的经济回报。1.2技术可行性基于Python技术、Flask框架和MySQL数据库开发睡眠质量分析平台将具有较高的技术可行性。Python作为一种简单易学、功能丰富的编程语言,适合用于快速开发和原型设计,为项目提供了良好的技术基础。Flask框架它是使用Python语言的一款轻量级的Web框架,特点是灵活和扩展性好,能在短时间内开发出较为稳定的web页面。MySQL数据库发展到现在在技术已经是一种成熟的数据库管理系统,能够满足系统对数据存储和管理的需求。综合考虑之后,使用Python语言、Flask框架和MySQL数据库的技术方案能够有效实现睡眠质量分析平台的设计与开发,为用户提供准确、可靠的睡眠数据分析和个性化的睡眠管理服务。1.3操作可行性睡眠质量分析平台在操作上具备高度的可行性。首先Python是一个高效的编程语言,在针对数据处理和分析方面表现十分突出,尤其在结合pandas等库时,能有效地进行数据探索、清洗、预处理和可视化。在获取个人睡眠数据后,可以通过算法来计算平均睡眠时长、睡眠质量评分等关键指标,然后利用这些数据进行进一步的分析,如识别不同的睡眠阶段、评估睡眠质量、检测异常睡眠情况等。睡眠质量分析平台的操作简便、功能强大,是个人健康管理和科学研究的有力工具。2.系统功能分析2.1用户使用者睡眠质量分析平台的设计与开发系统包括三个部分,分别是管理员、讲师以及系统用户,系统将通过为用户使用者分配不同的角色方式,来划分不同的角色功能与业务流程。用户使用者如表3-1使用者表所示。表3-1使用者表序号词汇描述1管理员管理员在使用账号密码登陆系统后,对系统信息、个人信息管理、用户管理、选择题调研管理、填空题调研管理、判断题调研管理、调研记录管理、调研类型管理、调研类型统计、调研数据分析、睡眠质量分析等功能进行查看与操作2讲师讲师在使用账号密码登陆系统后,对个人信息管理、教学视频管理、评价管理、反馈管理等功能进行查看与操作3用户用户可以在进入系统后,可以操作身高体重管理、饮食管理、意见反馈、调研记录管理、睡眠信息管理等系统功能。2.2系统用例模型睡眠质量分析平台的设计与开发系统包括三个部分,分别是管理员、讲师以及系统用户,系统将通过为用户使用者分配不同的角色方式,来划分不同的角色功能与业务流程。用户使用者如表2-1使用者表所示。管理员主要负责系统内的角色分配、用户信息修改等业务流程,管理员用例图如图3-1所示。图3-1管理员用例图讲师主要负责上传教学视频,以及查看系统内的意见和反馈信息等,讲师用例图如图3-2所示。图3-2讲师用例图用户主要在系统中管理自己的身高体重信息,使用问题调研与意见反馈等业务功能,用户用例图如图3-3所示。图3-3用户用例图3.系统业务流程分析本系统主要分为管理员,讲师和用户三个板块。系统的业务流程设计清晰,角色划分比较明确。管理员主要负责用户信息的添加和修改,对调研记录进行管理以及睡眠质量分析等功能,保证系统能够稳定的运行。讲师端对应的功能就是健康教学指南,通过添加健康教学视频,让用户观看并学习,再根据用户提供的反馈进行相应的更改。最后是用户端,通过管理员设置的问卷调查来大致了解睡眠质量情况,但更多的是身高体重数据、饮食数据、睡眠情况数据的录入和修改。三者之间的功能相互关联,构成一个较为完整高效的系统运行体系,这样可以更好的满足用户的需求,让系统变得更加有意义和有价值。系统中用户、讲师和管理员角色与业务功能流程关系如下图3-4所示:图3-3系统总体业务流程图
第四章系统的总体设计1.系统总体1.1系统功能设计睡眠质量分析平台的设计与开发设计并开发实现了反馈管理、饮食数据分析、体重日志分析、睡眠综合分析、清醒次数分析、健康教学分析、身高体重管理、睡眠信息管理和饮食管理等业务功能模块。图4-1管理员功能结构图图4-2讲师端功能结构图图4-3用户端功能结构图1.2系统的时序图饮食数据分析时序图如图4-4所示图4-4饮食数据分析时序图反馈管理时序图如图4-5所示图4-5反馈管理时序图体重日志分析时序图如图4-6所示图4-6体重日志分析时序图2.数据库设计2.1概念模型设计系统概念模型设计是构建睡眠质量分析平台的设计与开发的关键基石,它的重要性在于能够明确系统核心功能与结构。睡眠质量分析平台的设计与开发ER图如下图所示。图4-7平台ER图睡眠质量分析平台的设计与开发ER图对应实体图如下所示图4-8反馈实体图图4-9健康教学指南实体图图4-10身高体重实体图图4-11睡眠实体图图4-11饮食管理实体图2.2数据表设计反馈管理表。在反馈管理表中记录了反馈人员、反馈标题和反馈内容等字段信息,具体表结构如下所示:表4-1反馈管理表字段名数据类型长度名称f_idinteger11反馈IDlogin_idinteger11用户IDf_titlevarchar128反馈标题f_contenttexttext反馈内容r_timetimetime记录时间健康教学指南表。在健康教学指南表中记录了课程名称、主讲人等字段信息,具体表结构如下所示:表4-2健康教学指南表字段名数据类型长度名称c_idinteger11教学IDc_class_namevarchar64课程名称c_t_namevarchar128主讲人c_file_pathtexttext视频文件c_remarktexttext备注信息login_idinteger11用户IDr_timetimetime记录时间身高体重管理表。在身高体重管理表中记录了身高、体重和BMI等字段信息,具体表结构如下所示:表4-3身高体重管理表字段名数据类型长度名称h_idinteger11身高体重IDheightfloat16身高kilogramfloat16体重bmifloat16bmih_remarktexttext备注login_idinteger11用户IDr_timetimetime记录时间睡眠管理表。在睡眠管理表中记录了睡眠时长、浅睡时长等字段信息,具体表结构如下所示:表4-4睡眠管理表字段名数据类型长度名称s_idinteger11睡眠IDsleep_durationfloat16睡眠时长awakening_frequencyinteger11清醒次数deep_sleepfloat16深睡时长shallow_sleepfloat16浅睡时长reminteger11快速眼动login_idinteger11用户IDr_timetimetime记录时间饮食管理表。在饮食管理表中记录了碳水摄入量、脂肪摄入量等字段信息,具体表结构如下所示:表4-5饮食管理表字段名数据类型长度名称d_idinteger11饮食IDd_typevarhcar64饮食类型d_carboninteger11碳水摄入量d_fatinteger11脂肪摄入量d_proteininteger11蛋白质摄入量d_heatinteger11热量login_idinteger11用户IDr_timetimetime记录时间
第五章系统的详细设计与实现1.讲师功能实现1.1反馈管理功能实现系统内的用户作为系统中讲师上传的教学视频的直接使用者,对于视频课程的教学质量和学习体验有着最直观的感受,所以通过收集用户对于教学课程的意见和想法,有助于讲师不断的改良自己的课程内容,进而为系统用户提供更优质的教学体验。同时通过在平台中设计和实现反馈管理功能,通过让讲师在反馈管理中通过新增和修改等简单的点击和输入的交互动作回答用户提出的问题,建立了良好的沟通机制与氛围,提高用户对于讲师的认同感。平台中的/table_feedback_u路由地址对应着反馈管理页面菜单,菜单采用HTMLMenu属性进行开发与实现。当讲师通过ChromeBrowser访问/table_feedback_u后,既可以查看到来自Mysql数据库中feedback_info数据表内的varchar、text类型的字段信息,由于HTML与Mysql无法直接建立TCPConnect,所以使用PythonFlask作为WebAPI层,通过Flask与Mysql建立TCPConnect后,HTML再与Flask建立HTTP连接,进而完成反馈管理的数据流转通道。反馈管理流程图如5-1所示。图5-1反馈管理流程图反馈管理界面如图5-2所示。图5-2反馈管理图2.管理员功能实现2.1饮食数据分析功能实现在饮食数据分析中通过按照时间周期的统计维度,对不同日期内的碳水摄入量、脂肪摄入量和蛋白质摄入量分别进行统计与分析,对饮食模式进行综合评估。再结合用户每日的睡眠情况信息,帮助用户分析与判断其自身的饮食习惯和模式是否会对睡眠质量造成影响。在饮食分析数据中的碳水摄入量、脂肪摄入量和蛋白质摄入量模块均采用折线图的方式对统计结果进行展示,统计图的横轴展示时间,按照年月日的时间格式并参考时间正序进行展示,纵轴则表示在该日期下的各摄入量的具体摄入信息。饮食数据分析功能中的各组统计结果对应的源数据均来自于Mysql数据库中的diet_info数据表中。当浏览器中的Echarts组件根据/ys/fat、/ys/carbon、/ys/protein路由地址的不同分别通过HTTPGET方法请求/api/vis/fat、/api/vis/carbon、/api/vis/protein接口地址时,在接口中会使用GroupBy关键字对r_time字段进行分组,使用Sum方法对d_carbon、d_fat、d_protein字段进行加和统计,最后将统计结果以JSON格式返回到页面上完成统计结果的展示。饮食数据分析流程图如5-3所示。图5-3饮食分析流程图饮食数据分析界面如图5-4所示。图5-4饮食数据分析图2.2体重日志分析功能实现在用户将自己准确的体重信息与BMI信息记录到系统中的身高体重管理功能模块后,管理员就可以在体重日志分析功能中查看到用户不同时间段内的体重与BMI数值的变化走势。在体重日志分析功能中提供了时间搜索框功能,支持管理员按照实际的数据查询需求对特定日期内用户的体重和BMI变化情况进行攥取与分析。借助可视化折线图能够清晰展示数据趋势变化和走势的效果,帮助用户及时发现体重和BMI数值的异常波动,进而判断用户的身体状态是否存在潜在的风险和异常。体重日志分析功能中的BMI统计结果和体重统计结果使用ApacheEcharts中的折线图对统计结果进行展示。借助CSS样式语言将HTML的background属性设置为dark和light两种不同的颜色背景,同时设置Echarts中的折线的color属性,便于管理员对结果进行观察,了解统计数据的含义。体重日志分析中的数据来自于Mysql数据库中的hw_info数据表,通过对表中bmi和kilogram字段进行GroupBy和Max计算来获取统计结果。体重日志分析流程图如5-5所示。图5-5体重日志流程图体重日志分析界面如图5-6所示。图5-6体重日志分析图2.3睡眠综合分析功能实现为了能够让管理者能够在同一时间可以查看到用户不同时段的睡眠整体情况,同时还能够方便的对睡眠时长、深睡时长和浅睡时长进行数值对比,直观发现自己是深睡时间不足还是浅睡时间过长等问题。在睡眠综合分析功能中使用多重曲线图的数据展示形式来向管理者反映真实的用户睡眠情况,当管理者将鼠标悬浮到曲线上方时,曲线会有一个颜色变化的动态效果,同时会在曲线上展示该时间对应的具体睡眠数值信息,给使用者一个良好的数据阅读体验。睡眠综合分析功能中的数据接口使用PythonFlask进行开发与实现,当管理者访问/sleep/all路由地址并填写时间查询条件后,监听/sleep/all路由的Vue.js会将时间搜索借助time字段发送到支持HTTPGET方法的/api/vis/sleep_all接口地址内。在接口内使用request.args.getlist方法获取来自Vue.js传递的time字段,并使用request.headers.get("Authorization","")验证管理者的身份权限信息。睡眠综合分析流程图如5-7所示。图5-7睡眠综合分析流程图睡眠综合分析界面如图5-8所示。图5-8睡眠综合分析图2.4清醒次数分析功能实现清醒次数分析功能分为上下两个部分,下方展示了一个基于时间和清醒次数计算的折线可视化图形。通过折线图能够让管理者查看到用户在整个睡眠过程中不同时间点的清醒次数变化,并结合时间走势对睡眠的片段化程度有更具体的认识。如果发现长时间的频繁清醒则需要引起重视,发现和排查潜在的睡眠障碍。在页面上方除了提供基于时间搜索的搜索框外,还提供了一个综合判断后得到的睡眠结果显示窗口,在这个窗口中管理者可以查看到平台根据用户整体的清醒频次情况来给出是否属于正常范畴的判定。清醒次数分析中的数据内容来自于Mysql数据库中的sleep_info数据表,在/api/vis/sleep_awakening_frequency数据接口收到来自Vue.js发送来的数据加载请求后,在/api/vis/sleep_awakening_frequency接口中会与Mysql数据库建立TCP通讯连接,连接建立完成后使用date_format方法格式化r_time字段,将其从datetime类型调整为支持JSON格式的char类型,使用max函数计算awakening_frequency的值,并最后对经过date_format处理的r_time进行OrderBy排序操作。清醒次数分析流程图如5-9所示。图5-9清醒次数分析流程图清醒次数分析界面如图5-10所示。图5-10清醒次数分析图2.5深睡时长分析功能实现深睡时长分析功能中通过折线图的可视化展示方式,将系统内不同日期区间中的深睡时长数据进行统计分析,通过折线图横轴展示时间、纵轴展示深睡时长数值的方式,以其折线高点和折线低点为使用者展示深睡时长的趋势变化情况,进而更好的对当时用户的状态进行进一步分析,同时还可以将统计得到的深睡数据与人体健康所需的深睡时长进行比对,当发现异常时可以及时介入。深睡时长分析流程图如5-11所示。图5-11深睡时长分析流程图深睡时长分析界面如图5-12所示。图5-12深睡时长分析图2.6浅睡时长分析功能实现使用者在通过Chrome、MicroSofeEdge等主流Browser工具访问/sleep/shallow_sleep路由地址之后,可以查看到由折线图展示的浅睡时长分析数据统计结果,在折线图的上方会使用CSS样式语言将分析结论的color属性进行修改,让使用者可以在浏览分析数据时第一时间捕捉到结果。折线图采用橙色进行展示,横轴的时间字段以年月日的结构呈现以符合使用者的阅读习惯,纵轴使用等长的线段来辅助标识折线上每个点所对应的数值信息。浅睡时长分析流程图如5-13所示。图5-13浅睡时长分析流程图浅睡时长分析界面如图5-14所示。图5-14浅睡时长分析图2.7快速眼动统计功能实现快速眼动统计功能中的折线图数据来自于Mysql数据库中的sleep_info数据表,在/api/vis/sleep_rem接口连接Mysql数据库之后,会通过execute方法执行SelectSql语句。Sql语句中会包含对r_time字段的date_format操作,将时间格式从年月日时分秒调整为年月日格式,同时通过Max函数计算rem字段的最大值,将最终计算所获得的结果以JSON格式返回到快速眼动统计中对应的Echarts组件上进行呈现。快速眼动统计流程图如5-15所示。图5-15快速眼动统计流程图快速眼动统计界面如图5-16所示。图5-16快速眼动统计图2.8调研类型统计功能实现在调研类型统计功能中旨在对系统中记录的题目类型进行统计分析,并将统计的结果通过柱形可视化图表的方式进行展示,图表的横轴展示了调研类型统计的名称信息,纵轴则表示该分类下拥有的题目数量。通过统计不同类型题目的数量和占比,帮助使用者直观了解问卷在各个主题领域的覆盖情况,以及各种类体型的丰富程度,进而不断的对题目进行优化和改良。调研类型统计流程图如5-17所示。图5-17调研类型统计流程图调研类型统计界面如图5-18所示。图5-18调研类型统计图2.9调研数据分析功能实现调研数据分析中展示的图形采用ApacheEcharts组件进行展示,在Echarts中的展示数据来源于Mysql数据库中的dy_record数据表,通过对tj_answer字段的Where判断筛选和过滤出选择题与填空题。当Flask与Mysql连接并通过Pymysql.fetchall方法获取到数据结果后,通过JSON.dumps方法将PythonDict类型转换为String类型,借助HTTP协议返回到Echarts中完成数据展示。调研数据分析流程图如5-19所示。图5-19调研数据分析流程图调研数据分析界面如图5-20所示。图5-20调研数据分析图2.10睡眠质量分析功能实现睡眠质量分析功能采用饼图的方式对统计结果进行展示与呈现,在饼图上通过不同的颜色将睡眠相关的问题进行区分,并在页面的右上方提供了对应颜色的图例帮助使用者对数据的统计结果进行辨认,同时在睡眠质量分析功能中提供了对时间、调研类型的条件进行统计结果二次筛选的功能,便于使用者根据实际需求快速获取睡眠质量分析的分析结果。睡眠质量分析流程图如5-21所示。图5-21睡眠质量分析流程图睡眠质量分析界面如图5-22所示。图5-22睡眠质量分析图3.用户功能实现3.1健康教学指南功能实现为了方便平台中的用户能够随时随地的登录到系统中并浏览讲师们上传的各种教学视频,在平台上设计并开发了健康教学指南功能。在健康教学指南功能中用户可以查看到视频的主讲人、视频的课程名称以及视频的备注介绍信息。用户可以根据自身的需要,以及在查看系统内的意见反馈中评价较好、议论较热烈和受欢迎的讲师情况来挑选课程。用户在选择心仪的课程后点击页面右侧的观看直播按钮,即可在浏览器中查看到该视频信息。用户通过主流的WebBrowser工具MicroSoftEdge等访问/edu_guide路由地址后,可以查看到由HTMLButton、Table等页面元素构成的功能页面。在进入到健康教学指南页面时,监听/edu_guide的Vue.js会向Flask实现的/api/edu_video/list接口发起请求,通过控制current和pageSize参数,从Mysql数据库中的teaching_video数据表分次分批的获取数据内容,实现了数据翻页和lazyload的效果。健康教学指南流程图如5-23所示。图5-23健康教学指南流程图健康教学指南界面如图5-24所示。图5-24健康教学指南图3.2身高体重管理功能实现为了帮助用户更好的管理与查看自身身高体重的数据,同时简化用户记录身高体重数据是所需要的交互动作,在平台中设计和开发实现了身高体重管理功能模块。模块中设计了身高、体重、BMI字段,对标主流的健康评估指标项。在页面中为使用者赋予了新增、修改和删除身高体重数据的操控权限,以保障用户不断的丰富和完善自身的身体状态信息,为后续的体重分析、BMI分析提供较好的数据支持。身高体重管理的数据被妥善保管在Mysql数据库中的hw_info数据表中,在表内通过设计datetime、varchar、integer等字段类型将height、kilogram等字段内容进行妥善保存。身高体重管理的数据接口采用PythonFlask进行开发,在/api/hw/list接口中通过Pymysql与Mysql数据库建立TCP连接后,借助Pymysql.execute和Pymysql.fetchall方法来执行SelectSql查询以及查询结果获取操作。身高体重流程图如5-25所示。图5-25身高体重流程图身高体重管理界面如图5-26所示。图5-26身高体重管理图3.3睡眠信息管理功能实现睡眠信息管理功能旨在迎合用户对自身睡眠数据精细管理的诉求,为用户提供一个记录个人睡眠数据的入口。在睡眠信息管理的页面上允许完成系统注册的用户将自己的睡眠时长、清醒次数、深睡时长、浅睡时长、快速眼动信息记录到系统内进行持久化的留存与查看,也允许用户借助修改功能不断矫正睡眠数据,进而在后续的睡眠数据分析过程中获得最准确的分析结果,达到改善睡眠质量的最终目的。对于记录重复或者长期无变化的睡眠数据可以通过删除功能清理不必要的数据内容,减少平台的磁盘空间占用情况。睡眠管理页面采用responsivewebdesign设计思路进行开发,当用户勾选HTMLCheckBox组件后点击HTMLButton进行删除时,Vue.js会将CheckBox对应的ID发送到Flask开发的RestfulApi接口/api/sleep/delete中。在接口中使用request.args.get('id','')获取数据ID后,借助String.format方法切分id,使用pymysql.execute方法执行DeleteSQL完成睡眠数据删除操作。睡眠管理流程图如5-27所示。图5-27睡眠管理流程图睡眠管理界面如图5-28所示。图5-28睡眠管理图
3.4饮食管理功能实现用户的饮食情况与睡眠质量有着千丝万缕的联系,比如当咖啡、可乐、浓茶在摄入过多时,可能会导致用户出现失眠的情况。所以通过饮食管理功能,帮助用户对饮食习惯进行有效记录,包括不同饮食类型的情况以及碳水摄入量、脂肪摄入量、蛋白质摄入量、热量字段值等,为后续饮食可视化分析手段提供准确的数据支持。饮食管理中的数据使用Mysql数据库中的diet_info数据表进行保存,当用户查看到来自Flask接口/api/diet/list返回的数据内容后,点击数据的HTMLButton进行编辑时,Vue.js会将数据ID和HTMlForm表单中的数据通过/api/diet/update接口发送到Mysql数据库中,借助UpdateSql完成饮食数据的更新操作。饮食管理流程图如5-29所示。图5-29饮食管理流程图饮食管理界面如图5-30所示。图5-30饮食管理图
第六章系统测试1.测试目的与意义对系统进行测试主要是为了确保开发的每个功能都能正常的运行,便于及时的发现系统存在的漏洞,并且加以调试和改正,避免系统在投入使用的过程中出现错误,同时减少给用户带来的不便,这样可以提升用户对系统的体验感和满意度。对系统进行测试可以验证系统的设计是否达到了最初的想法,同时通过测试也能知道系统对用户私密数据的保护是否安全,也能发现系统的不足,方便确定系统后续的发展方向。2.测试环境系统测试环境采用了了最新的开发工具与技术栈,以此保证测试过程的全面与高效。后台使用Pycharm2023.3作为编译器,支持Python3.11后端技术,保障代码质量与性能。前端则运用React2.0框架,结合Nodepad7.5.5文本编译器,完善了用户界面与交互体验。Navicat10.5作为数据库访问工具,助力数据测试与验证。最后,Nginx1.6作为发布服务器,保证测试环境的稳定运行与高效访问。整体测试环境配置比较先进,为系统测试提供了坚实的基础。3.测试过程3.1身高体重管理功能测试测试人员使用系统内预置的用户账号访问身高体重管理功能页面时,页面上是否能够顺利的加载出身高体重信息中涉及的BMI、体重等字段信息,查找的内容是否与数据库中存储的内容一致。测试人员是否能够在身高体重管理页面中对数据进行新增、修改或者删除操作,并将操作后的内容顺利的展示在页面上,测试用例如下表6-1所示。表6-1身高体重管理测试用例表用例描述操作过程预期结果实际结果添加身高体重信息测试人员是否能够通过页面完成身高信息中BMI、身高、体重等信息的录入操作添加成功添加成功修改身高体重信息测试人员是否能够修改测试添加时输入的身高体重信息修改成功修改成功查看身高体重信息测试人员刷新身高体重管理页面,是否能够看到修改后的身高体重信息查看成功查看成功删除身高体重信息测试人员是否能对测试过程中产生的身高体重信息进行删除删除成功删除成功身高体重管理测试页面如图6-1所示。图6-1身高体重管理测试3.2睡眠信息管理功能测试测试人员使用系统内预置的用户账号访问睡眠信息管理功能页面时,页面上是否能够顺利的加载出睡眠信息中涉及的睡眠时长、眼动次数、清醒次数等字段信息,展示内容是否与数据库中存储的内容一致。测试人员是否能够在睡眠信息管理页面中对数据进行新增、修改或者删除操作,并将操作后的内容顺利的展示在睡眠信息页面上,测试用例如下表6-2所示。表6-2睡眠信息管理测试用例表用例描述操作过程预期结果实际结果添加睡眠信息测试人员是否能够通过页面完成睡眠信息中睡眠时长、眼动次数、清醒次数等信息的录入操作添加成功添加成功修改睡眠信息测试人员是否能够修改测试添加时输入的睡眠信息的深度睡眠字段信息修改成功修改成功查看睡眠信息测试人员刷新睡眠信息管理页面,是否能够看到修改后的深度睡眠信息查看成功查看成功删除睡眠信息测试人员是否能对测试过程中产生的睡眠信息进行删除删除成功删除成功睡眠信息管理测试页面如图6-2所示。图6-2睡眠信息管理测试3.3饮食管理功能测试测试人员使用系统内预置的用户账号访问饮食管理功能页面时,页面上是否能够顺利的加载出饮食管理中涉及的热量、碳水摄入量等字段信息,展示内容是否与数据库中存储的内容一致。测试人员是否能够在饮食管理页面中对数据进行新增、修改或者删除操作,并将操作后的内容顺利的展示在饮食管理页面上,测试用例如下表6-3所示。表6-3饮食管理测试用例表用例描述操作过程预期结果实际结果添加饮食信息测试人员是否能够通过页面完成饮食管理中碳水摄入量、蛋白质摄入量等信息的录入操作添加成功添加成功修改饮食信息测试人员是否能够修改测试添加时输入的饮食信息中的热量字段信息修改成功修改成功查看饮食信息测试人员刷新饮食管理页面,是否能够看到修改后的热量字段信息查看成功查看成功删除饮食信息测试人员是否能对测试过程中产生的饮食信息进行删除删除成功删除成功饮食管理测试页面如图6-3所示。图6-3饮食管理测试结论对于睡眠质量分析平台的设计与开发,完善了许多功能,成功的实现了饮食数据分析、体重日志分析、睡眠综合分析、清醒次数分析、健康教学分析、身高体重管理、睡眠信息管理和饮食管理等模块,实现了一个较为全面、专业的智能化睡眠健康工具。针对用户提供的数据进行整合,有针对性的提出相应的建议和指导,帮助用户解决睡眠质量问题,提升健康管理水平。该平台中还包括饮食数据分析,可以帮助用户实现减脂、增肌等目标,在市场中有显著的经济效益。从更高层次来说,睡眠质量分析平台的设计与开发可以推动社会的健康发展,帮助用户了解自己的健康问题,并进行相应的健康管理。对以后社会的发展有着非常重要的积极作用。最后,虽然该系统已经取得上述的成果,系统仍存在许多的不足,数据处理方面的效率还有待提升、以及部分用户体验感较差。在后续的开发中,我们会针对用户所提出的建议以及在市场投入使用后具体出现的问题进行改进,不断提高用户的满意度,让系统更加简洁适用。未来我们还将继续进行拓展与开发,融合更多先进技术,开发出一个更加全面高效的科技产品。
参考文献[1]曲笛.郝雅文.关丽君等.基于中医传承辅助平台探究关丽君教授治疗儿童睡眠障碍用药规律[J].中国中西医结合儿科学,2023,15(06):518-523.[2]安士诚.于红妍.大学生身体活动对焦虑情绪的影响:睡眠质量的中介作用[C]//江西省体育科学学会,全国学校体育联盟江西省分联盟,江西省体育学学科联盟,华东交通大学体育与健康学院.第四届“全民健身科学运动”学术交流大会暨运动与健康国际学术论坛论文集.上海交通大学;,2023:2.[3]刘素.睡眠体验的人机交互设计与创新探索[J].科技创新与应用,2023,13(33):45-48.[4]祁雷磊.陈月莹.庞然等.基于数据挖掘分析高荣林教授治疗失眠的用药规律[J].中国医药导报,2023,20(31):4-11.[5]TobiasB,GiovanniC,ZarahHV,etal.AnopeneducationalresourcetointroducedataanalysisinPythonfortheHumanities[J].EducationforInformation,2023,39(2):105-119.[6]李天丽.刘爱军.孙新宽.基于数据挖掘分析侯振民教授治疗寒热错杂失眠用药规律[J].中医临床研究,2023,15(11):97-101.[7]孙占锋.王鹏远.李萍.Python程序设计实践指导[M].中国铁道出版社:202302.199.[8]M.R.R.R.L.G.etal.Self-reportedsleepdisturbancesattributedtolight,temperature,andnoisedeclinelinearlywithage:abig-dataanalysisof92,702users[J].SleepMedicine,2022,100(S1):S6-S7.[9]党星星.王翠.韩祖成等.基于数据挖掘分析韩祖成治疗失眠组方规律[J].陕西中医,2021,42(12):1769-1772.[10]余本国.刘宁.李春报.Python大数据分析与应用实战[M].电子工业出版社:202112.357.[11]全洁慧.孙晓昕.贺文韬等.基于数据挖掘分析中医药治疗冠心病合并失眠的用药规律[J].世界科学技术-中医药现代化,2021,23(06):1887-1894.[12]陈小宁.郭进.罗文佳等.基于大数据框架的人体健康参数管理分析平台设计与实现[J].信息记录材料,2021,22(02):162-163.[13]邱宏.李欣春.刘宁宁等.基于数据挖掘分析袁肇凯教授治疗失眠的用药规律[J].中国医药导报,2020,17(28):117-120.[14]张瑞全.基于智能运动手环的中国成年人体力活动大数据分析[J].商丘师范学院学报,2020,36(09):78-81.[15]吴磊.欧阳赫明.基于Spark的分布式健康大数据分析系统设计与实现[J].软件导刊,2020,19(07):99-102.附录主函数关键代码#-*-coding:utf-8-*-importpymysqlfromflaskimportFlask,gapp=Flask(__name__)'''加载路由列表,进行接口预处理,导入相关文件'''fromApp.login.api_loginimportappasapi_loginapp.register_blueprin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 光学摄像机建设项目可行性分析报告(总投资13000万元)
- 2010年江苏公务员A类模拟试卷二(公共基础知识)
- 物业管理工作流程图(全套)
- 安全我知道课件三年级
- 2026年电子杂志发布合同
- 筹建小发路洗煤厂可行性研究报告
- 2026年教育主题洞穴探险项目地质知识课程合同
- 医疗机构制剂警戒管理办法(试行)
- 房产审图合同范本
- 基建项目改造合同范本
- 混凝土泵车安全操作课件
- 《气动与液压系统安装与调试》 课件 工作任务 B-4 气动逻辑控制回路的搭建与调试
- 马场布局规划方案
- 计算书-反渗透
- 激光先进制造技术 课件 第3章 激光熔覆技术
- 急诊科培训应急处置与团队合作
- 儿内科泌尿系统疾病诊疗规范2023版
- 《狼》第二课时公开课一等奖创新教案
- 注塑机设备日常点检表
- 2022中国石化西南石油局毕业生招聘50人上岸笔试历年难、易错点考题附带参考答案与详解
- 老狐狸经(历代经典文丛)
评论
0/150
提交评论