Python plotly标志从图表中消失

问题描述 投票:0回答:1

我必须创建一个简单的报表,显示一个数据表,并在上角有两个标志。下面的代码在以前的项目中工作,但现在我在新的计算机上重新使用它,在一个新的项目中,它不会显示标志。

我没有得到任何错误信息。相同版本的 plotly 和 python "plotly==4.6.0" "Python 3.6.1" 。

请注意,唯一改变的是在datatable中显示的数据。

import plotly.graph_objects as go
import pandas as pd



traces = go.Table(
    header=dict(values=list(df.columns),
            align='left'),
    cells=dict(
        values=df.T.values.tolist(),
        align='left'))



layout = go.Layout(
                title='Report <br>  {}'.format( report_date),
                title_x=0.5,
                paper_bgcolor='#FFFFFF',
                margin = {'t':100, 'b':40, 'r':40, 'l':40}
                ,images=[
                    dict(
                        source='assets\\MiniLogo.png',
                        xref='paper',yref='paper',
                        x=1,y=1.05,
                        sizex=0.2, sizey=0.2,
                        xanchor="right", yanchor="bottom"), 
                    dict(
                        source='assets\\Titlelogo.png',
                        xref='paper',yref='paper',
                        x=0,y=1.05,
                        sizex=0.2, sizey=0.2,
                        xanchor="left", yanchor="bottom")

                    ]

                )
fig = go.Figure(
        data=traces
        ,layout=layout)
fig.show()
python plotly
1个回答
2
投票

我认为问题出在 source 在你 layout. 我已经用你的代码与 该图片的URL 而不是相对路径,而且工作得很完美,下面是一个截图,知道我用一个简单的表作为我的 df:

enter image description here

在我看来,你有两个选择来克服这个问题。

  • 把这些图片上传到云服务上,然后用它们的网址来代替。

  • 或者根据这个 Plolty社区主题,您可以使用 Pillow.Image 类来读取本地机器上的图像。你可以通过运行 pip install pillow 并将你的代码修改成这样。

    from PIL import Image
    
    layout= go.Layout(images= [dict(
                      source= Image.open('assets\\MiniLogo.png'),
                      ...)])
    
© www.soinside.com 2019 - 2024. All rights reserved.