gpt4 book ai didi

flask - 如何以图像格式保存绘图

转载 作者:行者123 更新时间:2023-12-02 19:56:22 25 4
gpt4 key购买 nike

这里“graphJSON”是一个用于绘制图形的变量,我如何使用该变量捕获(图像格式)图形?

graphJSON = json.dumps(data, cls=plotly.utils.PlotlyJSONEncoder)
plotly.io.to_image(graphJSON, format=None,
scale=None, width=None, height=None)

最佳答案

  • 安装 plotly-orca
  • 创建你的 plotly 人物
  • 将图形转换为PNG
  • 将二进制 PNG 转换为 base64 编码字节
  • 将 base64 字节解码为 ascii 并将它们传递给您的 Jinja2 模板

完整代码

import plotly
import base64
import jinja2

# create the graph
scatter = plotly.graph_objs.Scatter(x=[1, 2, 3], y=[2, 1, 3])
layout = plotly.graph_objs.Layout()
fig = plotly.graph_objs.Figure([scatter], layout)

# convert graph to JSON
fig_json = fig.to_json()

# convert graph to PNG and encode it
png = plotly.io.to_image(fig)
png_base64 = base64.b64encode(png).decode('ascii')

# definition of the Jinja2 template
template = """<html>
<head>
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
</head>
<body>
<img src="data:image/png;base64,{{ png_base64 }}" />

<div id='divPlotly'></div>
<script>
var plotly_data = {{ plotly_data }}
Plotly.react('divPlotly', plotly_data.data, plotly_data.layout);
</script>
</body>

</html>"""

# generate the HTML page
with open('new_plot.html', 'w') as f:
f.write(jinja2.Template(template).render(png_base64=png_base64,
plotly_data=fig_json))

关于flask - 如何以图像格式保存绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56928811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com