智能文章系统实战-统计数据展示Pyhton版本(17)
admin 发布于:2018-7-16 18:32 有 2071 人浏览,获得评论 0 条
1. 查看数据
2. 图形代码
#!/usr/bin/python3 # -*- coding: utf-8 -*- #引入库 import matplotlib matplotlib.use('Agg') import matplotlib.pyplot as plt import pymysql from matplotlib.font_manager import * #定义自定义字体,文件名从1.b查看系统中文字体中来 myfont = FontProperties(fname='/usr/share/fonts/stix/simsun.ttc') #解决负号'-'显示为方块的问题 matplotlib.rcParams['axes.unicode_minus']=False #初始化变量 x=[] y1=[] y2=[] # 打开数据库连接 db = pymysql.connect("localhost","root","","article" ) # 使用 cursor() 方法创建一个游标对象 cursor cursor = db.cursor() # SQL 查询语句 sql = "SELECT stat_date,pv,ip FROM stat ORDER BY id DESC LIMIT 0,10" try: # 执行SQL语句 cursor.execute(sql) # 获取所有记录列表 results = cursor.fetchall() for row in results: x.append(row[0]) y1.append(row[1]) y2.append(row[2]) # 打印结果 #print(x) #print(y1) #print(y2) except: print ("Error!") # 关闭数据库连接 db.close() #绘制图形 plt.figure(figsize=(12,8)) plt.plot(x,y1,label='PV',color='r',marker='o') plt.plot(x,y2,label='PV',color='b',marker='s') plt.xlabel(u'日期',fontproperties=myfont) plt.ylabel(u'统计数量',fontproperties=myfont) plt.title(u'数据统计',fontproperties=myfont) plt.xticks(rotation=0) # 设置数字标签 for a, b in zip(x, y1): plt.text(a, b, b, ha='center', va='bottom', fontsize=20) for a, b in zip(x, y2): plt.text(a, b, b, ha='center', va='bottom', fontsize=20) plt.legend() #plt.show() plt.savefig("stat.png")
3.显示图形