Python 离线打印模板-it';有可能吗?

Python 离线打印模板-it';有可能吗?,python,plotly,Python,Plotly,我正在使用Python Plotly图表库,以便从我的Python Django web应用程序构建图形,并将其注入模板,如下所示: 视图: 模板: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>test

我正在使用Python Plotly图表库,以便从我的Python Django web应用程序构建图形,并将其注入模板,如下所示:

视图:

模板:

<!DOCTYPE HTML>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>test</title>
</head>
<body>
  {% autoescape off %}
  {{ plot_div }}
  {% endautoescape %}
</body>
</html>

测试
{%autoescape off%}
{{plot_div}}
{%endautoescape%}

这些代码行生成了一个简单的散点图,并将其显示给客户端模板,现在我想使用另一个主题模板,如文档()中所述,Plotly有许多默认模板可供使用,但我不知道如何在脱机图表视图渲染器中使用它们。如何在图形中使用
plotly_white
模板

好的,在尝试了很多方法之后,我找到了一个解决方案

基本上,我们需要:

  • 构建轴对象
  • 使用定义轴字典和要使用的模板的
    模板
    对象创建布局
  • 创建包含带有轴和自定义布局的图形的地物对象
  • 将图表打印到div容器
下面是我使用的代码片段:

import numpy as np
import plotly.graph_objs as go
from plotly.offline import plot



def plot1d():
    x_data = np.arange(0, 120, 0.1)
    trace1 = go.Scatter(
        x=x_data,
        y=np.sin(x_data),
    )
    trace2 = go.Scatter(
        x=x_data,
        y=np.cos(x_data),
    )

    data = [trace1, trace2]
    layout = go.Layout(
        # autosize=False,
        # width=900,
        # height=500,
        template='plotly_dark',
        xaxis=dict(
            autorange=True
        ),
        yaxis=dict(
            autorange=True
        )
    )
    fig = go.Figure(data=data, layout=layout)
    plot_div = plot(fig, output_type='div', include_plotlyjs=False)
    return plot_div
最后的结果是:

import numpy as np
import plotly.graph_objs as go
from plotly.offline import plot



def plot1d():
    x_data = np.arange(0, 120, 0.1)
    trace1 = go.Scatter(
        x=x_data,
        y=np.sin(x_data),
    )
    trace2 = go.Scatter(
        x=x_data,
        y=np.cos(x_data),
    )

    data = [trace1, trace2]
    layout = go.Layout(
        # autosize=False,
        # width=900,
        # height=500,
        template='plotly_dark',
        xaxis=dict(
            autorange=True
        ),
        yaxis=dict(
            autorange=True
        )
    )
    fig = go.Figure(data=data, layout=layout)
    plot_div = plot(fig, output_type='div', include_plotlyjs=False)
    return plot_div