У меня есть plot
объект bokeh
, где я строю sin(x)
кривую.
from math import *
from io import BytesIO
from bokeh.plotting import (figure, output_file, show)
from bokeh.io import (export_png, export_svgs)
import base64
import numpy as np
plot = figure(plot_width=1000, plot_height=500)
x = np.linspace(-2*np.pi, 2*np.pi, 1000)
y = np.array([sin(i) for i in x])
plot.line(x, y, line_width=1)
Теперь вместо сохранения его в каком-то файле html
с некоторым именем, output_file('sine.html')
Я хочу создать объект BytesIO()
, чтобы в дальнейшем можно было кодировать base64
.
Мне любезно нужна помощь сообщества.
Причина, по которой я желаю, заключается в matplotlib
Я могуэкспортируйте изображение как BytesIO()
объект и плавно работайте с ним, отрисовывая его обратно в Flask
или Dash
приложении, например,
figfile = BytesIO()
plt.savefig(figfile, format='png')
plt.clf()
figfile.seek(0)
figdata_png = base64.b64encode(figfile.getvalue())
return figdata_png.decode('UTF-8')
, и я хочу такую же применимость с bokeh
.
Пожалуйста, ведите меня с этим.