脚本专栏 
首页 > 脚本专栏 > 浏览文章

python读取mysql数据绘制条形图

(编辑:jimmy 日期: 2024/11/19 浏览:3 次 )

本文实例为大家分享了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 demo
select 1,'AAA',15.2,5,76,'2017-09-09' union all
select 2,'BBB',10,6,60,'2016-05-18' union all
select 3,'CCC',21,11,231,'2014-07-11' union all
select 4,'DDD',55,2,110,'2016-12-24' union all
select 5,'EEE',20,4,80,'2017-02-08' union all
select 6,'FFF',45,2,90,'2016-08-19' union all
select 7,'GGG',33,5,165,'2017-10-11' union all
select 8,'HHH',5,40,200,'2014-08-30' union all
select 9,'III',3,20,60,'2015-02-25' union all
select 10,'JJJ',10,15,150,'2015-11-02';

python 绘图分析:

# -*- coding: utf-8 -*-
#import numpy
import MySQLdb
import plotly.plotly
import plotly.graph_objs as pg
 
host = "localhost"
port = 3306
user = "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 文件如下:

python读取mysql数据绘制条形图

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:Python实现猜年龄游戏代码实例
下一篇:Python环境下安装PyGame和PyOpenGL的方法
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap