You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Dash服务启动时将指定图表保存为图片

在Dash启动时自动保存指定图表为图片

要实现Dash服务器启动时自动将serious-chart的图表保存为图片,可借助Plotly的plotly.io模块完成,同时需确保启动时能生成初始图表。以下是修改后的完整方案:

核心步骤

  1. 导入plotly.io模块用于图表保存;
  2. 给输入组件input-bar设置初始值,保证启动时回调能触发生成图表;
  3. 在启动服务器前,手动调用回调函数生成初始图表并保存。

修改后的完整代码

import dash
from dash import html, dcc, Input, Output
import plotly.io as pio

app = dash.Dash(__name__)

app.layout = html.Div(
    children=[ 
        dcc.Input(
            id='input-bar',
            value='默认值',  # 设置输入组件初始值,确保启动时回调触发
            type='text'
        ),
        dcc.Graph(
            id='serious-chart',
            style={
                "width": '1000px',
                'height': '500px',
            }
        ),
    ],style={'position':'absolute',
            'width':'160vh',
            'height':'55vh',
            'top': '142%',
            'left': '50%',
            'border': '1px solid black',
            'border-radius':'10px',
            "transform": "translate(-50%, -50%)",
            }
)

@app.callback( 
    Output(component_id='serious-chart',component_property='figure'), 
    Input(component_id='input-bar',component_property='value'),
)
def returnCharts(value):
    """ 这里替换成你的实际图表生成逻辑 """
    fig = {
        'data': [{'x': ['类别1', '类别2', '类别3'], 'y': [5, 3, 7], 'type': 'bar'}],
        'layout': {'title': f'基于[{value}]生成的图表'}
    }
    return fig

if __name__ == '__main__': 
    # 获取初始图表并保存
    initial_fig = returnCharts('默认值')  # 传入input-bar的初始值
    # 保存为PNG格式,路径可自定义
    pio.write_image(initial_fig, 'serious-chart.png', format='png', width=1000, height=500)
    # 若需保存JPEG格式,替换为下面一行(需提前安装kaleido依赖:pip install kaleido)
    # pio.write_image(initial_fig, 'serious-chart.jpg', format='jpeg', width=1000, height=500)
    
    app.run_server(debug=True)

注意事项

  • 若input-bar是下拉框等其他组件,只需对应设置它的value初始值即可;
  • pio.write_image支持指定图片宽高,和图表的style保持一致可保证保存的图片尺寸匹配;
  • 保存JPEG格式需安装kaleido依赖,执行pip install kaleido即可完成安装。

内容的提问来源于stack exchange,提问作者kollo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 12:40:31