Modificar el tamaño de los glifos con un widget
Otra área de interés para el fondo de cobertura es la farmacéutica, ya que hay mucha innovación y esto crea oportunidades para nuevas start-ups y scale-ups.
Te han pedido que produzcas un diagrama de dispersión que muestre el valor y el volumen de las acciones de cinco farmacéuticas del conjunto de datos: AbbVie, Eli Lilly, Merck, Johnson & Johnson y Nuformix. No tienes claro cómo se verá la visualización, así que decides usar el widget Spinner, que permite a las partes interesadas personalizar el tamaño de los glifos si es necesario.
Este ejercicio forma parte del curso
Visualización de datos interactiva con Bokeh
Instrucciones del ejercicio
- Importa
layoutySpinner. - Crea un spinner titulado
"Glyph size", con tamaños de 1 a 30 píxeles, que cambien de 1 píxel en cada clic, con un valor por defecto de 4 y un ancho de 60. - Completa
spinner.js_link(), pasando primero"value", después el atributo glyph del scatter y, por último, especificando"size"como el atributo que deseas modificar con el spinner. - Muestra el layout, con
titleen una sola fila, y una segunda fila que muestrespinneryfigen ese orden.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Import modules
____
____
labels = ["ABBV", "JNJ", "LLY", "MRK", "NFX"]
fig = figure(x_axis_label="Volume", y_axis_label="Stock Price ($)")
scatter = fig.circle(x="volume", y="close", source=source, legend_field="name", fill_color=factor_cmap("name", palette=Category10_5, factors=labels), fill_alpha=0.5)
title = Div(text="Pharmaceuticals Stock Performance")
fig.xaxis[0].formatter = NumeralTickFormatter(format="0a")
# Create spinner
spinner = ____(title="____", low=____, high=____, step=____, value=____, width=____)
# Set up the widget action
spinner.js_link("____", ____.____, "____")
output_file(filename="pharma_stocks.html")
# Display the layout
show(____(____))