python讀取mysql數據繪制條形圖
本文實例為大家分享了python讀取mysql數據繪制條形圖的具體代碼,供大家參考,具體內容如下
Mysql 腳本示例:
create table demo( id int,product varchar(50),price decimal(18,2),quantity int,amount decimal(18,2),orderdate datetime);insert into demoselect 1,’AAA’,15.2,5,76,’2017-09-09’ union allselect 2,’BBB’,10,6,60,’2016-05-18’ union allselect 3,’CCC’,21,11,231,’2014-07-11’ union allselect 4,’DDD’,55,2,110,’2016-12-24’ union allselect 5,’EEE’,20,4,80,’2017-02-08’ union allselect 6,’FFF’,45,2,90,’2016-08-19’ union allselect 7,’GGG’,33,5,165,’2017-10-11’ union allselect 8,’HHH’,5,40,200,’2014-08-30’ union allselect 9,’III’,3,20,60,’2015-02-25’ union allselect 10,’JJJ’,10,15,150,’2015-11-02’;
python 繪圖分析:
# -*- coding: utf-8 -*-#import numpyimport MySQLdbimport plotly.plotlyimport plotly.graph_objs as pg host = 'localhost'port = 3306user = 'root'passwd = 'mysql'charset = 'utf8'dbname = 'test'conn = None try: conn = MySQLdb.Connection( host = host, port = port, user = user, passwd = passwd, db = dbname, charset = charset ) cur = conn.cursor(MySQLdb.cursors.DictCursor) cur.execute('select * from demo;') rows = cur.fetchall() #rows = numpy.array(rows) lists = [[],[],[],[]] for row in rows: lists[0].append(row['product']) lists[1].append(row['price']) lists[2].append(row['quantity']) lists[3].append(row['amount']) #print(lists) #print(lists[0]) #print(([x[0] for x in lists])) date_price = pg.Bar( x=lists[0], y=lists[1], name=’價格’) date_quantity = pg.Bar( x=lists[0], y=lists[2], name=’數量’) date_amount = pg.Bar( x=lists[0], y=lists[3], name=’總價’) data = [date_price, date_quantity, date_amount] #barmode = [stack,group,overlay,relative] layout = pg.Layout( barmode=’group’,title='各產品銷售情況' ) fig = pg.Figure(data=data, layout=layout) plotly.offline.plot(fig, filename = 'C:/Users/huangzecheng/Desktop/test.html') finally: if conn: conn.close()
將代碼保存為文件 bartest.py ,執行腳本 python bartest.py ,生成 html 文件如下:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
