'insertion of list to a plotly dash dropdown resulting in empty dropdown
I have been watching various tutorials where a drop-down menu is created using dash core components. I was able to recreate the one demonstrated in youtube tutorial. The only thing I changed from that working code was that I replaced the dictionary within the options argument to a list of species that I would like the user to be able to choose from. I am okay with the label being the same as the value in the case of all the species and so I don't believe that I need the dictionary as per dash plotly dropdown documentation.
Is there a reason that I cannot insert a list in the options argument? Either in the form of a variable name or the actual list itself?
Expected outcome: list inserted to working code creates a dropdown containing all elements of the list
actual outcome: the dropdown is created without error but is empty
Here is the code that is not producing drop-down values:
app.layout = html.Div([
dcc.Dropdown(
id = 'first-dropdown',
options = [species], #where species = long list of strings
value = 'Pacific Water Shrew' #one of the strings contained in species
)
])
if __name__ =='__main__':
app.run_server()
I'm sure there is a simple fix, but I have been a little bit stumped here.
Thanks in advance!
Solution 1:[1]
As per comment, if species is a list, [species] is a list of lists. Just pass the list. Also beware typos, values in your list in your comment were not consistent with value argument.
from dash import html, dcc
import dash
# Build App
# app = JupyterDash(__name__)
app = dash.Dash()
species = ['Pacific Water Shrew','Whihtebark Pine']
app.layout = html.Div(
[
dcc.Dropdown(
id="first-dropdown",
options=species, # where species = long list of strings
value="Pacific Water Shrew", # one of the strings contained in species
),
html.Pre(dash.__version__)
]
)
app.run_server()
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 |
