Open
Description
The Node and Deno contexts can't use the matplotlib_pyodide
backends but work fine with Agg
.
Takes a second to piece together but one pattern I'm finding useful is to save the output as a data:
url.
import base64
import io
import numpy as np
import matplotlib
from matplotlib import pyplot as plt
matplotlib.use('Agg')
x = np.linspace(0, 2 * np.pi, 200)
y = np.sin(x)
fig, ax = plt.subplots()
ax.plot(x, y)
pic_IObytes = io.BytesIO()
plt.savefig(pic_IObytes, format='png')
pic_IObytes.seek(0)
pic_hash = base64.b64encode(pic_IObytes.read()).decode('utf-8')
dataurl = f'data:image/png;base64,{pic_hash}'
dataurl
Which seems to work! :D
Couldn't think of the right place for it but I think an example like that could be handy (even if just in this issue). Also interested in easier / more efficient patterns for sharing matplotlib figures between the python and JS contexts.
Metadata
Metadata
Assignees
Labels
No labels