Python Plotly Dash:如何根据用户输入更改标题?

Python Plotly Dash:如何根据用户输入更改标题?,python,plotly-dash,Python,Plotly Dash,我正试图根据Dash中的用户输入更改标题标题。但是不知道如何将值传递给html.H1标记,因为它不接受参数value。当用户提交输入时,如何更改标题 #-*-编码:utf-8-*- 导入破折号 将仪表板核心组件作为dcc导入 将dash_html_组件导入为html 从dash.dependencies导入输入 从dash.dependencies导入输出 从dash.dependencies导入状态 外部_样式表=['https://codepen.io/chriddyp/pen/bWLwg

我正试图根据Dash中的用户输入更改标题标题。但是不知道如何将值传递给
html.H1
标记,因为它不接受参数
value
。当用户提交输入时,如何更改标题


#-*-编码:utf-8-*-
导入破折号
将仪表板核心组件作为dcc导入
将dash_html_组件导入为html
从dash.dependencies导入输入
从dash.dependencies导入输出
从dash.dependencies导入状态
外部_样式表=['https://codepen.io/chriddyp/pen/bWLwgP.css']
股票代码默认值='AAPL'
app=dash.dash(名称,外部样式表=外部样式表)
颜色={
“背景”:“111111”,
“文本”:“7FDBFF”
}
app.layout=html.Div([
dcc.输入(
id='ticker',
value='AAPL',
type=“text”
),
按钮(
“提交”,
id='button'
),
html.Div(id='ticker\u field'),
html.Div(id='ticker\u header',子项=[
html.H1('DCF估价'+用户输入代码),
])
])
@app.callback(
[
输出('ticker\u标题'、'children')
],
[
输入('按钮','点击'),
],
[
状态(组件id='ticker',组件属性='value'),
#状态(组件\u id='ticker\u header',组件\u property='value'),
]
)
def更新_ticker_标题(ticker):
返回f'{ticker}'
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
app.run_服务器(debug=True)

您可以在回调中创建整个
html.H1
标记,如下例所示

import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output, State

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

app.layout = html.Div([

    dcc.Input(
        id='ticker',
        value='AAPL',
        type="text"
    ),

    html.Button(
        'Submit',
        id='button'
    ),

    html.Div(
        id='ticker_header'
    ),

])

@app.callback([Output('ticker_header', 'children')], [Input('button', 'n_clicks')],
    [State('ticker', 'value')])
def update_ticker_header(clicks, ticker):

    return [html.H1('DCF Valuation ' + f'{ticker}')]

if __name__ == '__main__':
    app.run_server(debug=True)
import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output, State

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

app.layout = html.Div([

    dcc.Input(
        id='ticker',
        value='AAPL',
        type="text"
    ),

    html.Button(
        'Submit',
        id='button'
    ),

    html.H1(children=[
        'DCF Valuation ',
        html.Div(id='ticker_header', style={'display': 'inline'}),

    ]),

])

@app.callback([Output('ticker_header', 'children')], [Input('button', 'n_clicks')],
    [State('ticker', 'value')])
def update_ticker_header(clicks, ticker):

    return [f'{ticker}']

if __name__ == '__main__':
    app.run_server(debug=True)

或者,您可以在
html.H1
标记内创建一个额外的
html.Div
,然后在回调中仅更新该
html.Div
的内容,如下例所示

import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output, State

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

app.layout = html.Div([

    dcc.Input(
        id='ticker',
        value='AAPL',
        type="text"
    ),

    html.Button(
        'Submit',
        id='button'
    ),

    html.Div(
        id='ticker_header'
    ),

])

@app.callback([Output('ticker_header', 'children')], [Input('button', 'n_clicks')],
    [State('ticker', 'value')])
def update_ticker_header(clicks, ticker):

    return [html.H1('DCF Valuation ' + f'{ticker}')]

if __name__ == '__main__':
    app.run_server(debug=True)
import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output, State

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

app.layout = html.Div([

    dcc.Input(
        id='ticker',
        value='AAPL',
        type="text"
    ),

    html.Button(
        'Submit',
        id='button'
    ),

    html.H1(children=[
        'DCF Valuation ',
        html.Div(id='ticker_header', style={'display': 'inline'}),

    ]),

])

@app.callback([Output('ticker_header', 'children')], [Input('button', 'n_clicks')],
    [State('ticker', 'value')])
def update_ticker_header(clicks, ticker):

    return [f'{ticker}']

if __name__ == '__main__':
    app.run_server(debug=True)