Comece agoraComece grátis

Alterando gráficos de linhas com Select

Na sua tarefa final, o fundo de hedge pediu que você montasse visualizações para analisar o desempenho das ações da Electronic Arts.

Você decidiu que o widget Select seria ideal, assim eles podem alternar entre as seguintes métricas: close, market_cap e volume.

O conjunto de dados stocks foi filtrado para EA. Três figuras (close, market_cap e volume) e conjuntos de glifos (close_line, market_cap_line, volume) foram criados para cada métrica e já estão pré-carregados para você.

Este exercicio faz parte do curso

Visualização Interativa de Dados com Bokeh

Ver curso

Instruções do exercicio

  • Crie menu chamando Select(), passando uma lista para o argumento options contendo "Close", "Market Cap" e "Volume" (nessa ordem), definindo value como "Close" e atribuindo o título "Metric".
  • Chame um método apropriado de menu para vincular o "value" do widget a callback.
  • Chame layout dentro de show, exibindo o widget acima das figuras close, market_cap e volume.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# 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")
____
Editar e Executar Código