python画图嵌入html
# -*- coding=utf-8 -*-
import matplotlib
import matplotlib.pyplot as plt
from io import BytesIO
import base64
import matplotlib.patches as mpatches
import time def render_picture(xlist, ylist, debugflag=False):
"""样式"""
plt.rcParams['font.family']=['Microsoft YaHei']
if not debugflag:
matplotlib.use('Agg') #绘图开关
patch = mpatches.Patch(color='blue', label='IPhoneX')
plt.legend(handles=[patch])
now = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
plt.title('%s 时间统计 机器编号#16'%now)
#保证x与y能够对齐
minlen = min(len(xlist), len(ylist))
plt.tick_params(axis='x', rotation=30)
plt.plot(xlist[:minlen], ylist[:minlen], 'b-^')
plt.ylabel('单位/s')
"""数值显示"""
for x,y in list(zip(xlist[:minlen], ylist[:minlen])):
plt.text(x, y+5, y, ha='center', va='baseline') """转换为html"""
sio = BytesIO()
plt.savefig(sio, format='png')
data = base64.encodebytes(sio.getvalue()).decode() html = '''
<html>
<body>
<img src="data:image/png;base64,{}" />
</body>
<html>
'''.format(data)
if debugflag:
plt.show()
plt.close()
return html if "__main__" == __name__:
"""数据"""
xlist = ['Fiber', 'Bootp', 'Carr', 'STA',
'CFGFinish', 'mcs', 'soc', 'RfConfig',
'pa', ]
ylist = [277, 282, 314, 318,
324, 357, 416, 456,
496]
print(render_picture(xlist,ylist,True))

python画图嵌入html的更多相关文章
- 将Python代码嵌入C++程序进行编写
将Python代码嵌入C++程序进行编写的实例,python嵌入 把python嵌入的C++里面需要做一些步骤 安装python程序,这样才能使用python的头文件和库 在我们写的源文件中增加“Py ...
- Python画图笔记
matplotlib的官方网址:http://matplotlib.org/ 问题 Python Matplotlib画图,在坐标轴.标题显示这五个字符 ⊥ + - ⊺ ⨁,并且保存后也能显示 h ...
- python画图—黑板客老师课程学习
1.介绍 把每个图都看作一个对象,图中的每一个部分也是对象.——所有的一切都是对象. 工具——ipython notebook 是python里边用的最多的2D&3D的会图库,开源免费库,使用 ...
- Python画图matplotlib展示图中中文乱码
在用python的 matplotlib 画图的时候,在图表上面有中文乱码问题,如下的: 解决过程: 平台:windows,python2.7步骤一:打开设置文件 import matplotlib ...
- Rnotebook中用python画图
如果notebook需要转化为pdf, 能想到办法是保存图片文件,嵌入mardown语法中. 但是如果在html中显示, 可以考虑下面思虑, 比较取巧. ``` {python, engine.pat ...
- python画图设置坐标轴大小
在console端输入python语句,会一句输一行,而且不保留你所做的操作,但是每一句之间加一个分号就能很好的解决. import pylab as Plot Plot.xlim(-150, 150 ...
- python 画图工具matplotlib 去掉坐标轴和坐标的方法
1. 去掉坐标轴的方法: plt.axis('off') 2.去掉刻度的方法: plt.xticks([]) plt.yticks([]) 以上语句需要将其置于 plt.show() 之前,plt.i ...
- 数字的可视化:python画图之散点图sactter函数详解
最近开始学习python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是查资料,最后总结如下: 1.scatter函数原型 2.其中散点的形状参数marker如下: 3.其中颜色参数c如 ...
- xcode 程序配置 python 解释器嵌入
1.点击项目->Buid Phases->加号点击 添加RunScript,Shell中写为python路径.一般是/usr/bin/python 2.同样是Build Phases中,L ...
随机推荐
- 整合 nginx php-fpm
start 继上一篇 整合两个images 完成 LNMP github https://github.com/shiphp/nginx-env 稍加修改 vim dockerfile ...
- HDU 5504:GT and sequence
GT and sequence Accepts: 95 Submissions: 1467 Time Limit: 2000/1000 MS (Java/Others) Memory Limi ...
- 《Java并发编程的艺术》并发编程的基础(四)
一.线程简介 1.线程的概念 系统运行的最小单元 2.为何使用多线程 更好地利用系统资源(处理器多核心),提高响应速度. 3.线程的状态 NEW(创建状态) RUNABLE(运行状态,系统调度,争抢时 ...
- SpringBoot+Jpa测试自增时报错Springboot-jpa Table 'sell.hibernate_sequence' doesn't exist
解决办法: @GeneratedValue(strategy = GenerationType.IDENTITY) 如图所示:
- ELK 安装Beat
章节 ELK 介绍 ELK 安装Elasticsearch ELK 安装Kibana ELK 安装Beat ELK 安装Logstash Beat是数据采集工具,安装在服务器上,将采集到的数据发送给E ...
- HDU 5280 BestCoder Round #47 1001:Senior's Array
Senior's Array Accepts: 199 Submissions: 944 Time Limit: 2000/1000 MS (Java/Others) Memory Limit ...
- TX2-刷机完成后安装程序ubuntu_linux命令&TX2学习总结
Linux教程|菜鸟教程:http://www.runoob.com/linux/linux-tutorial.html 认识linux:ping命令:ping命令是常用的网络命令ping网关:pin ...
- kettle将csv文件导入数据库
具体过程学习了: 1.连接数据库 2.添加新资源库 3.选择Other Repositories 4.选择Database Repository,第二个需要配置额外参数 5.连接数据库相关设置 6.连 ...
- Day1-T2
原题目 在小X的认知里,质数是除了本身和1以外,没有其他因数的数. 但由于小 X对质数的热爱超乎寻常,所以小X同样喜欢那些虽然不是质数, 但却是由两个质数相乘得来的数. 于是,我们定义一个数小 X喜欢 ...
- SqlServer体系结构
1.SQL的ABC 特色 (1) Application 应用:理念是提供软件.硬件.服务在内的完整解决方案 (2) Box盒子: 传统部署方式.部署在企业内部. (3)Cloud: 私有云 .公有云 ...