常州信息职业技术学院电子与工程学院 胡 钊
本文阐述了基于Python Flask的温度数据可视化方法,主要包括通过51单片机驱动DS18B20温度传感器通过串口通信向上位机发送温度数据,前端循环定时1s向后端Flask web框架发送ajax请求获取json数据,前端收到后端的响应数据通过ECharts可视化库显示温度。
在数据科学飞速发展的今天,拥有丰富的工具包与活跃的开源社区Python语言,在web开发数据可视化等领域的的价值日渐增长。能够对数据进行行之有效的探索性数据分析,并使用便捷的工具实现美观的数据可视化至关重要。本文研究的是温度传感器的数据可视化,实现单片机与上位机串口通信,后端向前端发送数据,前端拿到数据进行处理,可视化能将数据以更加直观的方式展现出来,使数据更加客观、更具说服力。在各类报表和说明性文件中,用直观的图表展现数据,显得简洁、可靠。

图1 程序设计流程图

图2 硬件原理图
(1)操作系统:Window 10
(2)Python版本:Python 3.7.4
(3)开发环境:Pycharm keil
(4)Python第三方库:Flask serial
(5)前端:jquery库,EChars库
在编写程序时,需要了解程序执行流程,如图1所示,在程序开始执行时,前端程序会设置一个定时器每个1s中向后端发送一个ajax请求,然后后端Flask收到请求后就会通过串口从单片机获取温度,再把数据转换成json格式发送给前端,前端收到数据通过处理追加到ECharts数组中,从而就能够实现需求。
ECharts,缩写来自Enterprise Charts,商业级数据图表,是百度的一个开源的数据可视化工具,一个纯Javascript的图表库,能够在……