Как вывести заголовок категории, за которым следует текст с отступом из флажка в Dash-Plotly? - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь создать следующий вывод (при условии, что все флажки выбраны) с помощью тире:

US:      MTL
         NYC 
         SF

Europe:  BER 
         AMS 
         PAR

Если ни один из флажков не установлен, то ни «US:», ни «Европа»"должен отображаться.Если, скажем, выбран только AMS, то я бы отображал только «Европа» и «AMS», но больше ничего.В моем собственном коде у меня есть много других категорий и опций, но, пожалуйста, найдите ниже базовую версию для иллюстрации того, что у меня сейчас есть.

Спасибо, ребята!

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

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

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



app.layout = html.Div(children=[
    #Output
    html.Div(id='my-div-checklist1'),

    #Clickboxes
    dcc.Checklist(id='my-checklist1',
    options=[
        {'label': 'New York City', 'value': 'NYC'},
        {'label': 'Montréal', 'value': 'MTL'},
        {'label': 'San Francisco', 'value': 'SF'}
    ],
    value=[]
    ),

    html.Hr(),



    dcc.Checklist(id='my-checklist2',
    options=[
        {'label': 'Berlin', 'value': 'BER'},
        {'label': 'Amsterdam', 'value': 'AMS'},
        {'label': 'Paris', 'value': 'PAR'}
    ],
    value=[],
    labelStyle={'display': 'inline-block'}
    ),
    html.Div(id='my-div-checklist2'),
    html.Hr(),


])




@app.callback(Output('my-div-checklist1', 'children'),
              [Input('my-checklist1', 'value'),
              Input('my-checklist2', 'value')
              ])

def prepare_data(categ1, categ2):
        return html.Div([dcc.Markdown(
        str(" ".join(categ1 )) + " " + '\n' + '\n' +
        str(" ".join(categ2)))])



if __name__ == '__main__':
    app.run_server(debug=True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...