python3 使用pymysql连接数据库并用Matplotlib实现数据可视化

    在python的数据可视化中常用到Matplotlib库,通过Matplotlib展示一些数据是十分方便的事情,但我们并不满足处理一些“死数据”,如何将数据库中的数据取出来并用好看的图表展示呢!python提供了 MySQLdb ,Pymysql等库给我们使用。

    python语言的3 x完全不向前兼容,Python2.x中使用的的MySQLdb并不支持python3。所以我们使用Pymysql对数据库进行连接操作。两者使用差别不大。

    下面进入正题。首先我们需要安装pymysql。

pip install PyMySQL

    接着是操作实例,数据库为lagou,表名为citys,数据如图。操作为将citys表中数据用直方图展示出来。

python3 使用pymysql连接数据库并用Matplotlib实现数据可视化_第1张图片

代码如下:

# -*- coding: utf-8 -*-

import  pymysql
import matplotlib.pyplot as plt

##获取一个数据库连接,注意如果是UTF-8类型的,需要制定数据库
db=pymysql.connect(host="master",user='root',passwd="123456",port=3306,db="lagou",charset='utf8')
cursor=db.cursor()#获取一个游标
sql="select city,need from citys"
cursor.execute(sql)
result=cursor.fetchall() #result为元组

#将元组数据存进列表中
city=[]
need=[]
for x in result:
    city.append(x[0])
    need.append(x[1])

#直方图
plt.bar(range(len(need)), need, color='steelblue', tick_label=city)
plt.xlabel("城市名")
plt.ylabel("数量")
plt.title("城市职位需求图")
for  x,y in enumerate(need):
    plt.text(x-0.4, y+0.4, '%s' % y)
plt.show()
cursor.close()#关闭游标
db.close()#关闭数据库

    效果图:

python3 使用pymysql连接数据库并用Matplotlib实现数据可视化_第2张图片


你可能感兴趣的:(python,数据挖掘)