python绘图输出到网页_python画图嵌入html

这段代码展示了如何使用Python的matplotlib库创建图表,并将生成的图表以PNG格式的Base64编码嵌入到HTML中。它定义了一个`render_picture`函数,该函数接收数据列表,设置图表样式,然后将其转换为HTML片段。最后,它在主函数中演示了如何使用这个函数,生成一个包含图表的HTML字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# -*- 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 = '''

'''.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))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值