如何在python中将本地保存的图像添加到绘图中?

时间:2019-07-18 18:21:48

标签: python image plotly

我正在使用plotly,并希望在图形中添加徽标。我的布局术语看起来像这样

layout = go.Layout(
    images=[dict(
        source="logo.png",
        xref="paper", yref="paper",
        x=0, y=0,
        sizex=10, sizey=10,
        xanchor="right", yanchor="bottom"
      )],
    height=1400, width=1100,
    hovermode='closest',
    title='fancy title',

    xaxis = dict(
     range = [10, 15],
     title = "xtitle",
     ticklen = 4,
     showgrid = False
    ),
    yaxis = dict(
     range = [20, 30],
     title = "ytitle",
     ticklen = 4,
     showgrid = False
   )

尽管我没有收到任何错误消息,但是我的徽标也没有出现在结果html文件中的任何位置。 logo.png与用于生成绘图html文件的Python脚本保存在同一目录中。阅读plotly的文档,似乎您需要将URL作为源,而不是本地目录。有什么办法可以包含我在本地拥有的徽标,而无需将其上传到某个地方?

添加:我修改了dataURI编码。我不得不说,我不太了解它是如何工作的,而且我看不出结果有什么不同。我尝试过

import base64
encoded = base64.b64encode(open("logo.png", "rb").read())

然后

images=[dict(
    source=encoded_image,
    xref="paper", yref="paper",
    x=8, y=50,
    sizex=100, sizey=100,
    xanchor="right", yanchor="bottom"
  )]

在布局部分无效。我在网上阅读了类似的内容。我用PIL Image开玩笑了一点,但结果却一样。

0 个答案:

没有答案