Glifos en Bokeh

Bokeh es una biblioteca de Python que se utiliza para crear visualizaciones de datos interactivas. En este artículo, discutiremos los glifos en Bokeh. Pero primero veamos cómo instalar Bokeh en Python.

Instalación

Para instalar este tipo, escriba el siguiente comando en la terminal.

conda install bokeh
Or
pip install bokeh  

Trazado con glifos

Por lo general, una gráfica consta de formas geométricas, ya sea en forma de línea, círculo, etc. Por lo tanto, los glifos no son más que formas visuales que se dibujan para representar los datos, como círculos, cuadrados, líneas, rectángulos, etc.  

Creación de un gráfico de líneas básico:

El gráfico de líneas muestra la visualización de los movimientos de los puntos de los ejes x e y en forma de línea. Para dibujar un glifo de línea a la figura, usamos el método line() del objeto de figura.

Sintaxis:

 my_plot.line(a, b, line_width)  

Código:                  

Python

# import the libraries
from bokeh.plotting import figure, show, output_file
 
# prepare some data
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
b = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
 
# create a plot using figure
my_plot = figure(title="simple line chart", x_axis_label="X-Axis",
                 y_axis_label="Y-Axis")
 
# adding line graph
my_plot.line(a, b, line_width=3)
 
# display output in file
output_file("line.html")
 
# show the result
show(my_plot)

Producción: 

Combinación de múltiples gráficos

También puede agregar múltiples gráficos con el uso de la interfaz bokeh.plotting. Para hacerlo, solo necesita llamar a la función line() varias veces pasando diferentes datos como parámetros, como se muestra en el ejemplo.

Sintaxis:

p.line(x1, y2, legend_label, line_color, line_width)

Código:

Python

from bokeh.plotting import figure, show
from bokeh.io import output_notebook
 
 
# prepare some data
x1 = [1, 3, 4, 5, 6]
x2 = [5, 3, 8, 1, 8]
y1 = [6, 7, 8, 9, 4]
y2 = [3, 4, 5, 6, 7]
 
# create a new plot
p = figure(title="Drawing multiple lines",
           x_axis_label="X-Axis", y_axis_label="Y-Axis")
 
# add multiple renderers
p.line(x1, y1, legend_label="line 1", line_color="red", line_width=1)
p.line(x2, y2, legend_label="line 2", line_color="blue", line_width=1)
p.line(x1, y2, legend_label="line 3", line_color="black", line_width=1)
 
output_notebook()
show(p)

Producción:

Círculos de representación

Para agregar el glifo circular a su gráfico, usamos el método circle() en lugar del método line() usado en el ejemplo anterior.

Circle(): usamos este método para agregar un glifo de círculo a la trama. Toma como parámetros las coordenadas x e y del centro. Aparte de estos, toma parámetros como tamaño, color de relleno, alfa de relleno, ángulo, color de línea, alfa de línea, radio, dimensiones de radio, etc.

Sintaxis:

p.circle(x, y, size, fill_color)

Criss_cross(): este método agrega un glifo circular con una marca ‘+’ en el centro del círculo y toma las coordenadas x e y del centro.

Sintaxis:

p.circle_cross(x, y, size, fill_color, fill_alpha, line_width)

Circle_X() : este método agrega un glifo de círculo con una marca ‘X’ en el centro del círculo y toma las coordenadas x e y del centro.

Sintaxis:

p.circle_x(x, y, tamaño,fill_color, fill_alpha, line_width)

Código:

Python

from bokeh.plotting import figure, show
from bokeh.io import output_file
 
# prepare some data
x = [1, 2, 4, 6, 7]
y = [7, 6, 3, 9, 10]
 
# create a new plot with figure function
p = figure(title="Circle Glyph", plot_width=450, plot_height=400)
 
# create circle glyph
p.circle(x=x, y=y, size=25, fill_color="red")
p.circle_cross(x=[2, 4, 6, 8], y=[5, 8, 9, 11], size=25,
               fill_color="blue", fill_alpha=0.3, line_width=2)
p.circle_x(x=[4, 7, 2, 6], y=[7, 2, 4, 9], size=25,
           fill_color="green", fill_alpha=0.6, line_width=2)
 
# show the results
output_file('circle.html')
show(p)

Producción: 

Barras de renderizado

De manera similar, podemos renderizar barras usando la función vbar() para barras verticales y la función hbar() para barras horizontales.

Creando vbar

Para dibujar vbar, especificamos la coordenada x central, los puntos finales inferior y superior como se muestra en el siguiente ejemplo:

Sintaxis:

p.vbar(x, bottom, top,
color, width, fill_color,legend_label)

Código:      

Python

# Bokeh libraries
from bokeh.io import output_notebook
from bokeh.plotting import figure, show
 
# data
day = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
no_orders = [450, 628, 488, 210, 287,
             791, 508, 639, 397, 943]
 
# Output the visualization directly in the notebook
output_notebook()
 
# Create a figure
p = figure(title='Bar chart',
           plot_height=400, plot_width=600,
           x_axis_label='Day', y_axis_label='Orders Received',
           x_minor_ticks=2, y_range=(0, 1000),
           toolbar_location=None)
 
# The daily orders will be represented as vertical
# bars (columns)
p.vbar(x=day, bottom=0, top=no_orders,
       color='blue', width=0.75, fill_color='red',
       legend_label='Orders')
 
# Let's check it out
show(p)

Producción:

Creando hbar

Para dibujar hbar , especificamos la coordenada y del centro, los extremos izquierdo y derecho y la altura, como se muestra en el siguiente ejemplo:

Sintaxis:

p.hbar(y, height, left, right,
 color, width, fill_color,
legend_label)

Código de ejemplo :

Python

# Bokeh libraries
from bokeh.plotting import figure, show, output_file
 
# data
day = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
no_orders = [450, 628, 488, 210, 287, 791,
             508, 639, 397, 943]
 
# Create a figure
p = figure(title='Bar chart',
           plot_height=400, plot_width=600,
           x_axis_label='Orders Received', y_axis_label='Day',
           x_range=(0, 1000), toolbar_location=None)
 
# The daily orders will be represented as
# horizontal bars
p.hbar(y=day, height=0.5, left=0, right=no_orders,
       color='blue', width=0.75, fill_color='red',
       legend_label='Orders')
 
# Let's check it out
show(p)
output_file("ex.html")

Producción: 

Glifo de parche

El glifo de parche sombrea una región del espacio en un color particular. Usamos el método patch() para desarrollar un único parche y el método patches() para desarrollar múltiples parches.

parche único

Sintaxis:

p.patch(x, y, fill_color, line_color, alpha, line_width)

Código:

Python

# Bokeh libraries
from bokeh.plotting import figure, show, output_file
 
# data
x = [1, 2, 3, 4, 5]
y = [6, 7, 8, 5, 2]
 
# Create a figure
p = figure(title='Patch Glyph',
           plot_height=400, plot_width=600,
           x_axis_label='x', y_axis_label='y',
           toolbar_location=None)
 
# add patch glyph
p.patch(x, y, fill_color="blue", line_color='black',
        alpha=0.5, line_width=2)
 
# show the results
show(p)
output_file("ex.html")

Producción: 

Múltiples parches

Se pueden crear múltiples parches de manera similar utilizando la función patches() en lugar de patch(). Estamos pasando los datos en forma de una lista de arrays para crear tres parches con diferentes colores en el ejemplo que se muestra a continuación.

Código:

Python

# Bokeh libraries
from bokeh.plotting import figure, show, output_file
 
# data
x = [[1, 2, 3], [4, 6, 8], [2, 4, 5, 4]]
y = [[2, 5, 6], [3, 6, 7], [2, 4, 7, 8]]
 
# Create a figure
p = figure(title='Patch Glyph',
           plot_height=400, plot_width=600,
           x_axis_label='x', y_axis_label='y',
           toolbar_location=None)
 
# add patches glyph
p.patches(x, y, fill_color=["blue", "green", "yellow"], line_width=2)
 
# show the results
show(p)
output_file("ex.html")

Producción:

Publicación traducida automáticamente

Artículo escrito por namaldesign 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 *