python调用mysql并在前台做数据展示

  • Post author:
  • Post category:mysql


今天是学习python的第二天。

根据自己的需要,将前段时间的扇形图稍微升华一下,从而可以从mysql数据库中查询数据,并作图形的展示。

以下为图形展示:

#导入库--注意本段代码不适用于python2
import pymysql
import matplotlib.pyplot as pyt

#处理中文乱码
pyt.rcParams['font.sans-serif'] = ['SimHei']
pyt.rcParams['axes.unicode_minus'] = False

#定义数据库连接
host='localhost'
user= 'root'
passwd='1234'
db='test001'

#定义要查询的城市
city_name='合肥市'

#定义县区查询sql
sql_name="SELECT country FROM `hefei_test` where city = %s GROUP BY country;"
sql_sizes="SELECT count(*) FROM `hefei_test` where city = %s GROUP BY country;"
#定义标题
title=city_name+"区县村级单位个数扇形图"
#定义扇形图各模块之间间距
exp=0.01

#打开数据库连接
conn = pymysql.connect(host = host,user = user,passwd = passwd,db = db)
#定义游标
cur=conn.cursor()
#执行县区查询sql
cur.execute(sql_name,(city_name,))
#返回所有查询结果(二维元组)
res=cur.fetchall()
#定义空列表(pie()方法需要将其转为列表类型)
labels_list=[]
#遍历查询结果元组
for y in res:
    print((y[0]))
    labels_list.append(y[0])
labels=labels_list
#打印结果测试
print(labels)
print(type(labels))

#执行区县下辖村民委员会个数查询
cur.execute(sql_sizes,(city_name,))
#返回所有查询结果(二维元组)
res=cur.fetchall()
#定义空列表(pie()方法需要将其转为列表类型)
sizes_list=[]
#遍历查询结果元组
for x in res:
    #print(x[0])
    sizes_list.append(x[0])
sizes=sizes_list
#处理结果测试
print(sizes)
print(type(sizes))

#游标关闭
cur.close()
#连接提交
conn.commit()
#连接关闭
conn.close()

#进行扇形各要素的引用
#获取查询区县个数
len=len(sizes_list)
#打印查看
print(len)
#定义空链表
explode=[]
#建立新链表内容,定义扇形图各模块之间间距
leng=0
while leng < len:
    explode.append(exp)
    leng=leng+1
explode=explode

##进行扇形各要素的引用
pyt.pie(sizes,labels=labels,explode=explode,shadow = True,autopct='%1.1f%%',startangle=0)
pyt.axis('equal')
#定义标题
pyt.title(title)
#扇形展示
pyt.show()





如果需要使用,记得安装PyMySQL,将数据库连接修改为自己的mysql数据库。如果调用的数据库表有变动,记得将查询语句进行修改。

数据库表内容如下:


town

country

city

撮镇镇

肥东县

合肥市

庄墓镇

长丰县

合肥市

泥河镇

庐江县

合肥市

万山镇

庐江县

合肥市

安徽省水家湖农场

长丰县

合肥市

夏阁镇

巢湖市

合肥市

肥东新城开发区

肥东县

合肥市

乐桥镇

庐江县

合肥市

大兴镇

瑶海区

合肥市

汤池镇

庐江县

合肥市

庙岗乡

巢湖市

合肥市

大杨镇

庐阳区

合肥市

官亭镇

肥西县

合肥市

银屏镇

巢湖市

合肥市

半汤街道办事处

巢湖市

合肥市

合肥循环经济示范园

肥东县

合肥市

梁园镇

肥东县

合肥市

水湖镇

长丰县

合肥市

三里街街道

瑶海区

合肥市

方兴社区

包河区

合肥市

柯坦镇

庐江县

合肥市

郭河镇

庐江县

合肥市

杨庙镇

长丰县

合肥市

铜陵路街道

瑶海区

合肥市

柘皋镇

巢湖市

合肥市

紫蓬山管委会

肥西县

合肥市

天河街道办事处

巢湖市

合肥市

滨湖世纪社区

包河区

合肥市

吴山镇

长丰县

合肥市

蜀山新产业园区

蜀山区

合肥市

苏湾镇

巢湖市

合肥市

桃花工业园管委会

肥西县

合肥市

店埠镇

肥东县

合肥市

烟墩街道

包河区

合肥市

明光路街道

瑶海区

合肥市

矾山镇

庐江县

合肥市

庐城镇

庐江县

合肥市

岗集镇

长丰县

合肥市

众兴乡

肥东县

合肥市

长临河镇

肥东县

合肥市

罗塘乡

长丰县

合肥市

上派镇

肥西县

合肥市

散兵镇

巢湖市

合肥市

张集乡

肥东县

合肥市

铭传乡

肥西县

合肥市

义井乡

长丰县

合肥市

高店乡

肥西县

合肥市

中垾镇

巢湖市

合肥市

龙桥镇

庐江县

合肥市

石塘镇

肥东县

合肥市

望湖街道

包河区

合肥市

桥头集镇

肥东县

合肥市

大圩镇

包河区

合肥市

三河镇

肥西县

合肥市

陶楼乡

长丰县

合肥市

嘉山路街道

瑶海区

合肥市

义城街道

包河区

合肥市

冶父山镇

庐江县

合肥市

罗河镇

庐江县

合肥市

庐阳工业区(林店街道)

庐阳区

合肥市

双墩镇

长丰县

合肥市

胜利路街道

瑶海区

合肥市

合肥龙岗综合经济开发区

瑶海区

合肥市

下塘镇

长丰县

合肥市

淝河镇

包河区

合肥市

坝镇镇

巢湖市

合肥市

槐林镇

巢湖市

合肥市

亚父街道办事处

巢湖市

合肥市

白山镇

庐江县

合肥市

响导乡

肥东县

合肥市

城东街道

瑶海区

合肥市

八斗镇

肥东县

合肥市

造甲乡

长丰县

合肥市

严店乡

肥西县

合肥市

中庙街道办事处

巢湖市

合肥市

朱巷镇

长丰县

合肥市

长淮街道办事处

瑶海区

合肥市

元疃镇

肥东县

合肥市

桃花镇

肥西县

合肥市

包公街道

包河区

合肥市

黄麓镇

巢湖市

合肥市

丰乐镇

肥西县

合肥市

盛桥镇

庐江县

合肥市

白湖镇

庐江县

合肥市

左店乡

长丰县

合肥市

柿树岗乡

肥西县

合肥市

烔炀镇

巢湖市

合肥市

马湖乡

肥东县

合肥市

常青街道

包河区

合肥市

古城镇

肥东县

合肥市

杜集乡

长丰县

合肥市

方庙街道办事处

瑶海区

合肥市

安徽庐江经济开发区

庐江县

合肥市

芜湖路街道

包河区

合肥市

山南镇

肥西县

合肥市

凤凰山街道办事处

巢湖市

合肥市

白龙镇

肥东县

合肥市

牌坊回族满族乡

肥东县

合肥市

包公镇

肥东县

合肥市

骆岗街道

包河区

合肥市

七里站街道

瑶海区

合肥市

金牛镇

庐江县

合肥市

三十岗乡

庐阳区

合肥市

陈集镇

肥东县

合肥市

红光街道

瑶海区

合肥市

花岗镇

肥西县

合肥市

栏杆集镇

巢湖市

合肥市

卧牛山街道办事处

巢湖市

合肥市

杨店乡

肥东县

合肥市

石头镇

庐江县

合肥市

同大镇

庐江县

合肥市

紫蓬镇

肥西县

合肥市

和平路街道

瑶海区

合肥市

双凤开发区

长丰县

合肥市

笔架山街道

蜀山区

合肥市

三里庵街道

蜀山区

合肥市

琥珀街道

蜀山区

合肥市

五里墩街道

蜀山区

合肥市

逍遥津街道

庐阳区

合肥市

西园街道

蜀山区

合肥市

四里河街道

庐阳区

合肥市

海棠街道

庐阳区

合肥市

三孝口街道

庐阳区

合肥市

稻香村街道

蜀山区

合肥市

南七街道

蜀山区

合肥市

小庙镇

蜀山区

合肥市

杏花村街道

庐阳区

合肥市

杏林街道

庐阳区

合肥市

荷叶地街道

蜀山区

合肥市

亳州路街道

庐阳区

合肥市

井岗镇

蜀山区

合肥市

双岗街道

庐阳区

合肥市

南岗镇

蜀山区

合肥市

如需使用,复制成excel,并用excel导入数据库即可。



版权声明:本文为com_zhansan原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。