Python大屏看板最全教程之数据库连接

Python大屏看板最全教程之数据库连接

阅读本文大约需要3分钟

主要内容:数据分析。

适用人群:Python初学者,数据分析师,或有志从事数据分析工作的人员。

准备软件:Anaconda(Spyder:代码编译)、NavicatPremium12(数据库)。

此图来自于网络,侵删

从事IT项目管理这么多年,基本上已经遗弃编程技能,但从2019年开始接触Python,深深地迷上了这门语言,像硬件集成、数据分析,我都会用python来写。晓风想通过本文,让初学者们学会以下内容:

1、Pyecharts图表;

2、连接数据库;

3、大屏看板-监控中心。

今天,我们讲2、连接数据库

接上文,还是以柱状图为例。链接:

1、首先,我们打开Navicat,“文件-新建连接-MYSQL”,我这边起名新连接为“datacenter”,点击右键,新建数据库“warehouse_input”(名字可以自己起)

2、建完数据库,我们来建自己的数据库表,保存

3、点击该表,维护一些测试数据,完成数据库内容的创建

4、回到Anaconda-Spyder,打开之前编写的图表文件或新建文件,我们先把柱状图的代码修改为函数形式

frompyechartsimportoptionsasoptsfrompyecharts.chartsimportBar,Pageimportpymysqldefbar(cos):#柱状图c=(Bar(init_opts=opts.InitOpts(bg_color=“white”)).add_xaxis(costomer).add_yaxis(“订单数量”,quantity).set_series_opts(label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(“客户订单数量”),datazoom_opts=opts.DataZoomOpts(is_show=True,range_start=0,range_end=100),toolbox_opts=opts.ToolboxOpts(orient=“vertical”,pos_left=“90%”,feature=opts.ToolBoxFeatureOpts(data_zoom=opts.ToolBoxFeatureDataZoomOpts(is_show=False)))))returnc

5、添加importpymysql(连接数据库需要),fromoperatorimportitemgetter(将数据参数化时需要),这里我想呈现各客户的订单数量,那么SQL语句和连接数据库的代码如下

importpymysqlfromoperatorimportitemgetterdb=pymysql.connect(host=“localhost”,user=“root”,password=“123456”,database=“warehouse_input”)sql=“selectcustomer_name,sum(cloth_quantity)ASnumsfrompoGROUPBYcustomer_name”try:cursor=db.cursor()cursor.execute(sql)cos=cursor.fetchall()exceptExceptionase:db.rollback()print(‘事物处理失败’,e)else:db.commit()print(‘事物处理成功’,cos)cursor.close()db.close()

6、接下来我们结合柱状图函数和数据库连接的内容,加入page函数

frompyechartsimportoptionsasoptsfrompyecharts.chartsimportBar,Pageimportpymysqlfromoperatorimportitemgetterdefbar(cos):#柱状图costomer=list(map(itemgetter(0),cos))quantity=list(map(itemgetter(1),cos))c=(Bar(init_opts=opts.InitOpts(bg_color=“white”)).add_xaxis(costomer).add_yaxis(“订单数量”,quantity).set_series_opts(label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(“客户订单数量”),datazoom_opts=opts.DataZoomOpts(is_show=True,range_start=0,range_end=100),toolbox_opts=opts.ToolboxOpts(orient=“vertical”,pos_left=“90%”,feature=opts.ToolBoxFeatureOpts(data_zoom=opts.ToolBoxFeatureDataZoomOpts(is_show=False)))))returncdb=pymysql.connect(host=“localhost”,user=“root”,password=“123456”,database=“warehouse_input”)sql=“selectcustomer_name,sum(cloth_quantity)ASnumsfrompoGROUPBYcustomer_name”try:cursor=db.cursor()cursor.execute(sql)cos=cursor.fetchall()exceptExceptionase:db.rollback()print(‘事物处理失败’,e)else:db.commit()print(‘事物处理成功’,cos)cursor.close()db.close()page=Page()page.add(bar(cos))page.render(“bar.ht

7、最后,我们运行下,看下效果

学习到了这里,我们就可以学会了图表的动态数据呈现。好了,大家赶紧动起来,有空就把所有图表都操作一遍。今天的内容就到这里,下篇文章将会教大家怎么将多个图表布局在一个大屏上,敬请期待。愿我们一起成长!

如果觉得有用的话,请帮忙点赞、关注、收藏哦,感谢您的支持!

本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。