Bokeh – Anotaciones y Leyendas

Prerrequisitos: Bokeh

Bokeh incluye varios tipos de anotaciones para permitir a los usuarios agregar información adicional a sus visualizaciones. Las anotaciones se utilizan para agregar notas o más información sobre un tema. Las anotaciones pueden ser títulos, leyendas, flechas, bandas, etiquetas, etc.

Agregar leyendas a sus figuras puede ayudar a describirlas y definirlas correctamente. Por lo tanto, dando más claridad. Las leyendas en Bokeh son fáciles de implementar. Pueden ser básicos, agrupados automáticamente, mencionados manualmente, indexados explícitamente y también interactivos.

A continuación se muestran los ejemplos para ayudarlo a comprender mejor:

Ejemplo : Leyendas básicas 

El parámetro legend_label se usa para agregar una etiqueta básica a cualquiera de los glifos.

Python3

from bokeh.plotting import figure, output_file, show
  
x = [val for val in range(10)]
y = [val for val in range(0, 20, 2)]
  
output_file("basiclegend.html")
  
p = figure()
  
p.line(x, y, legend_label="My Red Line", line_color="red")
p.line(y, x, legend_label="My Orange Line", line_color="orange")
p.line(y[::-1], x, legend_label="My Green Line", line_color="green")
  
show(p)

Producción:

Ejemplo 2: la agrupación automática se puede usar cuando queremos agrupar varios elementos de la leyenda para que se agrupen en uno.

Python3

from bokeh.plotting import figure, output_file, show
from bokeh.models import ColumnDataSource
  
p = figure(x_range=(0.5, 2.5), y_range=(0.5, 2.5))
  
source = ColumnDataSource(dict(
    x=[1, 1, 2, 2, 1.5],
    y=[1, 2, 1, 2, 1.5],
    color=['red', 'red', 'red', 'red', 'blue'],
    label=['corner', 'corner', 'corner', 'corner', 'center']
))
p.circle(x='x', y='y', radius=0.05, color='color',
         legend_group='label', source=source)
  
output_file("AutomaticGrouping.html")
  
show(p)

Producción:

Ejemplo 3: Leyendas interactivas

Python3

from bokeh.plotting import figure, output_file, show
  
p = figure()
  
x = [x for x in range(1, 11)]
colors = ['red', 'green', 'blue', 'yellow']
for i in range(2, 6):
    p.line(x, [val*i for val in x], line_width=2, color=colors[i-2],
           alpha=0.8, legend_label='Multiples of {}'.format(i))
  
p.legend.location = "top_left"
p.legend.click_policy = "hide"
output_file("interactive_legend.html")
  
show(p)

Producción:

Publicación traducida automáticamente

Artículo escrito por winstonpaisarsenal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *