Plotly Ipython display(HTML)函数不显示HTML-fi

2024-04-25 04:35:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用plotly library创建图像,并尝试以HTML格式显示。我已经将图像格式化为HTML格式。但是display(HTML(report_html))代码没有显示HTML页面。在

我使用的是python3.5和pycharmide。我没有用iPython笔记本。在

源代码:

 from IPython.display import display, HTML, Image
 import plotly.plotly as py
 from plotly.offline import init_notebook_mode
 init_notebook_mode()

 data = go.scatter(x=df['date'], y=i, name = long_name['value'])
 figures = [data]
 images = [base64.b64encode(py.image.get(figure, width=width,height=height)).decode('utf-8') for figure in figures]

  report_html = ''
  for image in images:
      _ = template
      _ = _.format(image=image, caption='', width=width, height=height)
      report_html += _

  display(HTML(report_html))

我没有收到任何错误。我只是得到以下输出

IPython.core.display.HTML object


Tags: frompyimageimportreportinithtml格式
1条回答
网友
1楼 · 发布于 2024-04-25 04:35:01

很抱歉迟来的回复,代码对我来说非常适合,让我分享我的示例,基本区别是我使用了figure object under plotly.graph_objs而不是{}

代码:

from IPython.display import display, HTML, Image
import plotly.plotly as py
import base64
import plotly.graph_objs as go
py.sign_in('<<username here>>', '<<api key here>>')

# required variables
width=500
height=300

# template not provided so created my own
template = """
<div class="row">
    <div class="col-xs-12" style="text-align:center">
        {caption}
    </div>
    <div class="col-xs-12">
        <img src="data:image/png;base64,  {image}" alt="Red dot"/>
    </div>
</div>
"""

# data = go.scatter(x=df['date'], y=i, name = long_name['value'])

# using my sample data instead
trace = go.Bar(x=[2, 4, 6], y= [10, 12, 15])

# layout can also be provided, I am giving as blank
layout = dict()

# figures = [data]
# changing the above commented line to plotly figure object
fig = go.Figure(data=[trace], layout=layout)

# defining list which will contain all the plot objects
figures = []
figures.append(fig)

images = [base64.b64encode(py.image.get(figure, width=width,height=height)).decode('utf-8') for figure in figures]

report_html = ''
for image in images:
    _ = template
    _ = _.format(image=image, caption='', width=width, height=height)
    report_html += _

display(HTML(report_html))

相关问题 更多 >