Python連接MySQL數據庫獲取數據繪制柱狀圖


 一、Python通過pymysql包獲取MySQL數據庫中的數據(沒有對應包的可以通過pip install pymysql 安裝對應的包)

import matplotlib.pyplot as plt

from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['STZhongsong']    # 指定默認字體:解決plot不能顯示中文問題
mpl.rcParams['axes.unicode_minus'] = False
# 引入pymysql包
import pymysql
# 連接數據庫並打開library數據庫
conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='123456', db='qskh_091')
# 獲取游標對象
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
# 執行SQL語句
cur.execute("SELECT * FROM xiaoliang t1 ORDER BY t1.銷售數量+'0';")
# 獲取執行結果
rows = cur.fetchall()
print(rows)
print("number of records: ", len(rows))
lists=[[],[]]
for row in rows:
    lists[0].append(row["產品代碼"])
    lists[1].append(row["銷售數量"])
# 關閉游標對象
print(lists)

x=lists[0]

y=lists[1]

plt.bar(x,y,width=0.5,align="center",label="銷售數量",color="coral")

plt.title("各產品銷售狀況")

for a,b in zip(x,y):
 plt.text(a,b,b,ha='center',va="bottom",fontsize=12)

plt.xlabel('產品名稱')

plt.ylabel('銷售數量')

plt.legend()

plt.show()

cur.close()
# 關閉數據庫連接
conn.close()

二、從數據庫中獲取的數據的數據結構如下所示

三、最終結果如下所示

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM