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

本文介绍如何使用Python的Pymysql库从MySQL数据库中提取数据,并利用Matplotlib库将这些数据以直方图的形式进行可视化展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

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

pip install PyMySQL

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


代码如下:

# -*- 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()#关闭数据库

    效果图:



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值