信息与电气工程学院
数据可视化报告(2016/2017学年第二学期)
专业班级:计算机1403
****:***
学号:*********
设计成绩:
2017年06月1日
目录
1 项目摘要 (3)
2 项目结构 (3)
2.1 数据库设计及实现 (3)
2.2 Flask (4)
2.3 前端 (5)
3 项目成果预览 (5)
4 项目中所遇到的问题 (7)
4.1 网页中文乱码 (7)
4.2 图表在网页中不显示 (7)
5 总结 (7)
1 项目摘要
本项目选取的数据集为一天的用电量分布,数据集是基于实际数据虚构的,因为数据量太庞大。虽然数
据是虚构的但是也具有一定的代表性。数据中包括了一天各个时段的用电量情况。本可视化的主要目的是能够清晰地展示某一个地区每天用电量的变化,以便发电厂预测用电量,更好的调动发电机组。
项目中主要使用的技术包括:MySql、Flask和Echarts。Echarts是一个商业级的图表库,项目中直接引用了Echarts的JS文件。Flask是一个使用Python 编写的轻量级Web 应用框架,这个直接安装到Python环境里了。项目的大概思路就是首先运行创建数据库的Python代码,创建好数据库之后。再运行读取数据库的Python代码—readDatabase.py,这个程序会去html网页,之后打开浏览器就能看到图表了。
2 项目结构
2.1 数据库设计及实现
2.1.1 数据库表
表1-1 epower表
属性名称数据类型可否为空备注
Time Varchar(20) 否时间
Powers Varchar(20) 否用电量
2.1.2 设计及实现
数据库就有两个字段,一个时间,一个用电量。数据库比较简单,都是最基本最基本的操作和实现。数据库插入数据是一个Python文件—create_data.py。首先配置好数据库连接的一些基本信息,然后在开始创建表。在创建表之前程序检查一下表是否存在,如果存在就将表删除,重新创建。其中创建表的代码为:
数据是保存在一个数组里,实际上就是将数组中的数据插入到数据库中去。插入数据的代码为:
最后关闭连接,释放资源。
2.2 Flask
Flask就是一个胶水层,将数据库和网页之间连接起来,这也是Python被称为“胶水语言”的一个体现。具体到项目,我们首先导入Flask类,然后我们使用route()装饰器告诉Flask 什么样的URL 能触发我们的函数。用Python 生成HTML 十分无趣,而且相当繁琐,因为必须手动对HTML 做转义来保证应用的安全。为此,Flask 配备了Jinja2 模板引擎。所以我使用render_template() 方法来渲染模板。代码如下:
@ute("/", methods=["GET"])
def index():
return render_template("index.html")
Flask 会在templates 文件夹里寻模板,也就是index.html。
然后主页异步加载数据,Flask识别URL中的powers就执行查询数据库的代码,并将结果返回给主页面。其中的GET请求方法是指:浏览器告知服务器:只获取页面上的信息并发给我。代码如下:
数据可视化名词解释@ute("/powers", methods=["GET"])
def powers():
hod == "GET":
t(host='localhost',user='root',passwd='root',db='stu2', port=3306,charset='utf8')
cur=conn.cursor()
res=cur.fetchall()
cur.close()
conn.close()
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论