本文介绍了使用 plotly/dash 为绘图创建背景图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试为带有背景图像的 plotly/dash 创建一个绘图.绘图已创建,但背景图像未创建.文件和图片在同一个目录下.
I'm trying to create an plot for plotly/dash with a background image. The plot is created, but the background image doesn't. The file and the image are located in the same directory.
我错过了什么吗?
import base64
import dash
import dash_core_components as dcc
import dash_html_components as html
import plotly.graph_objects as go
IMAGE_FILENAME1 = 'link.png'
image1 = base64.b64encode(open(IMAGE_FILENAME1, 'rb').read())
fig = go.Figure(
data=[go.Bar(y=[2, 1, 3])],
layout_title_text="Native Plotly rendering in Dash"
)
fig.update_layout( images= [dict(
#source="KU.png",
source='data:image/png;base64,{}'.format(image1.decode()),
#xref="container",
#yref="container",
layer="below")])
app = dash.Dash(__name__)
app.layout = html.Div([
dcc.Graph(id="graph", figure=fig),
])
app.run_server(debug=True)
获取无花果的属性:
fig
Figure({
'data': [{'type': 'bar', 'y': [2, 1, 3]}],
'layout': {'images': [{'layer': 'below',
'source': ('data:image/png;base64,iVBORw0K' ... 'Q7B0QA13afSQHVAAAAAElFTkSuQmCC')}],
'template': '...',
'title': {'text': 'Native Plotly rendering in Dash'}}
推荐答案
我的建议可能无法解决问题,因为不清楚图像不显示什么样的图形.我试图用你的代码显示我的图像.我修改的唯一代码是下面一行.
My suggestion may not solve the problem, since it is unclear what kind of graph the image does not show. I have tried to display the image I have with your code.The only code I modified is the following one line.
import base64
import dash
import dash_core_components as dcc
import dash_html_components as html
import plotly.graph_objects as go
from jupyter_dash import JupyterDash
IMAGE_FILENAME1 = './data/plotly_graphing_libraries_1.png'
image1 = base64.b64encode(open(IMAGE_FILENAME1, 'rb').read())
app = JupyterDash(__name__)
# app = dash.Dash(__name__)
fig = go.Figure(data=[go.Bar(x=[0,1,2], y=[2, 1, 3])], layout_title_text="Native Plotly rendering in Dash")
fig.add_layout_image(dict(source='data:image/png;base64,{}'.format(image1.decode()),
xref="x",
yref="y",
x=0, y=3,
sizex=2,
sizey=2,
sizing="stretch",
opacity=0.5,
layer="below"))
fig.update_layout(template="plotly_white")
app.layout = html.Div(children=[
dcc.Graph(id="graph", figure=fig),
])
app.run_server(mode='inline')
这篇关于使用 plotly/dash 为绘图创建背景图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!