Modifier des tracés de lignes avec Select
Pour cette dernière étape, le fonds spéculatif vous demande de créer des visualisations pour analyser la performance boursière d’Electronic Arts.
Vous décidez d’utiliser le widget Select, afin qu’ils puissent basculer entre les métriques suivantes : close, market_cap et volume.
Le jeu de données stocks a été filtré pour EA. Trois figures (close, market_cap et volume) et des ensembles de glyphes (close_line, market_cap_line, volume) ont été créés pour chaque métrique et préchargés pour vous.
Cet exercice fait partie du cours
Visualisation de données interactive avec Bokeh
Instructions
- Créez
menuen appelantSelect(), en passant une liste à l’argumentoptionscontenant"Close","Market Cap"et"Volume"(dans cet ordre), en définissantvaluesur"Close", et en donnant le titre"Metric". - Appelez une méthode appropriée de
menupour lier la"value"du widget àcallback. - Appelez
layoutà l’intérieur deshow, en affichant le widget au‑dessus des figuresclose,market_capetvolume.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Create menu
menu = ____
callback = CustomJS(args=dict(plot_one=close, plot_two=market_cap, plot_three=volume, line_1=close_line, line_2=market_cap_line, line_3=volume_line), code="""
plot_one.visible = true
plot_two.visible = true
plot_three.visible = true
line_1.visible = true
line_2.visible = true
line_3.visible = true
if (this.value == "Close") {plot_two.visible = false
plot_three.visible = false
line_2.visible = false
line_3.visible = false}
else {plot_one.visible = false
line_1.visible = false}
if (this.value == "Market Cap") {plot_one.visible = false
plot_three.visible = false
line_1.visible = false
line_3.visible = false}
else {plot_two.visible = false
line_2.visible = false}
if (this.value == "Volume") {plot_one.visible = false
plot_two.visible = false
line_1.visible = false
line_2.visible = false}
else {plot_three.visible = false
line_3.visible = false}
""")
# Set up the interaction
____
# Display the layout
output_file(filename="stock_metrics.html")
____