在我深入研究之前,这必须在内存中完成,而不将图像保存在本地(如果可能的话)。
我有一个matplotlib图表,是通过for循环创建的,并编码为base64链接。我希望能够显示在列堆叠计划作为图像,而不是在其当前的base64格式的base64链接。以下是查看表格的链接:
Table Image
下面是我用来将matplotlib图表转换为base64链接的代码,然后将它们附加到一个名为stacks的列表中,然后将其转换为一个表:
my_stringIObytes = BytesIO()
plt.savefig(my_stringIObytes, format='png')
my_stringIObytes.seek(0)
my_base64_jpgData = base64.b64encode(my_stringIObytes.read()).decode()
stacks.append(my_base64_jpgData)
字符串
然后在我的for循环之外是这样的,以便能够将图添加到我的汇总表中:
summary['Stacking Plan'] = stacks
型
我们的目标是能够将这些图表作为图像显示 Dataframe 。我没有能力保存图像,然后加载它们。
如果有更好的方法来做这件事,我也愿意接受。
1条答案
按热度按时间vmjh9lq91#
你就快成功了。
我假设您正在使用笔记本(否则,您需要知道如何呈现表格;在终端中,显然,这将是非常不同)
但是使用jupyter,您可以轻松地呈现HTML字符串,使用IPython
看到我自己的[mre]
字符串
您缺少的两个重要行是
toB64
的最后一行,它从base64 URL创建img元素。最后一个是用HTML呈现表格(假设您在笔记本中)。escape=False
意味着可能与html代码混淆的字符串内容不会像通常那样被转义,因此浏览器会将其视为真实的的HTML代码。x1c 0d1x的数据