Bokeh - Grafici con glifi
Ogni trama è solitamente composta da una o più forme geometriche come line, circle, rectangle,ecc. Queste forme contengono informazioni visive sul set di dati corrispondente. Nella terminologia Bokeh, queste forme geometriche sono chiamate Gylph. Trame Bokeh costruite utilizzandobokeh.plotting interfaceutilizzare un set predefinito di strumenti e stili. Tuttavia, è possibile personalizzare gli stili utilizzando gli strumenti di stampa disponibili.
Tipi di grafici
I diversi tipi di grafici creati utilizzando i glifi sono indicati di seguito:
Grafico a linee
Questo tipo di grafico è utile per visualizzare i movimenti dei punti lungo gli assi xey sotto forma di una linea. Viene utilizzato per eseguire analisi di serie temporali.
Bar trama
Ciò è in genere utile per indicare il conteggio di ciascuna categoria di una particolare colonna o campo nel set di dati.
Trama patch
Questo grafico indica una regione di punti in una particolare tonalità di colore. Questo tipo di grafico viene utilizzato per distinguere diversi gruppi all'interno dello stesso set di dati.
Trama a dispersione
Questo tipo di grafico viene utilizzato per visualizzare la relazione tra due variabili e per indicare la forza della correlazione tra di loro.
Diversi grafici di glifi vengono formati chiamando il metodo appropriato della classe Figure. L'oggetto Figure si ottiene seguendo il costruttore:
from bokeh.plotting import figure
figure(**kwargs)
L'oggetto Figure può essere personalizzato da vari argomenti di parole chiave.
Suor n | Titolo | Imposta il titolo per la trama |
---|---|---|
1 | x_axis_label | Imposta il titolo dell'asse x |
2 | y_axis_label | Imposta il titolo per l'asse y |
3 | plot_width | Imposta la larghezza della figura |
4 | plot_height | Imposta l'altezza della figura |
Grafico a linee
Il line() methoddell'oggetto Figura aggiunge un glifo a linea alla figura Bokeh. Ha bisogno dei parametri xey come array di dati per mostrare la loro relazione lineare.
from bokeh.plotting import figure, show
fig = figure()
fig.line(x,y)
show(fig)
Il codice seguente esegue il rendering di un semplice grafico a linee tra due set di valori nella forma di oggetti elenco Python -
from bokeh.plotting import figure, output_file, show
x = [1,2,3,4,5]
y = [2,4,6,8,10]
output_file('line.html')
fig = figure(title = 'Line Plot example', x_axis_label = 'x', y_axis_label = 'y')
fig.line(x,y)
show(fig)
Produzione
Bar trama
L'oggetto figura ha due metodi diversi per costruire il grafico a barre
hbar ()
Le barre vengono visualizzate orizzontalmente lungo la larghezza del grafico. Ilhbar() method ha i seguenti parametri:
Suor n | y | Le coordinate y dei centri delle barre orizzontali. |
---|---|---|
1 | altezza | Le altezze delle barre verticali. |
2 | destra | Le coordinate x dei bordi di destra. |
3 | sinistra | Le coordinate x dei bordi sinistri. |
Il codice seguente è un esempio di horizontal bar usando Bokeh.
from bokeh.plotting import figure, output_file, show
fig = figure(plot_width = 400, plot_height = 200)
fig.hbar(y = [2,4,6], height = 1, left = 0, right = [1,2,3], color = "Cyan")
output_file('bar.html')
show(fig)
Produzione
vbar ()
Le barre vengono visualizzate verticalmente lungo l'altezza del grafico. Ilvbar() method ha i seguenti parametri:
Suor n | X | Le coordinate x dei centri delle barre verticali. |
---|---|---|
1 | larghezza | Le larghezze delle barre verticali. |
2 | superiore | Le coordinate y dei bordi superiori. |
3 | parte inferiore | Le coordinate y dei bordi inferiori. |
Viene visualizzato il codice seguente vertical bar plot -
from bokeh.plotting import figure, output_file, show
fig = figure(plot_width = 200, plot_height = 400)
fig.vbar(x = [1,2,3], width = 0.5, bottom = 0, top = [2,4,6], color = "Cyan")
output_file('bar.html')
show(fig)
Produzione
Trama patch
Un grafico che ombreggia una regione dello spazio con un colore specifico per mostrare una regione o un gruppo con proprietà simili viene definito grafico a toppe in Bokeh. L'oggetto Figura ha i metodi patch () e patches () per questo scopo.
patch ()
Questo metodo aggiunge il glifo della patch alla figura data. Il metodo ha i seguenti argomenti:
1 | X | Le coordinate x per i punti della patch. |
2 | y | Le coordinate y per i punti della patch. |
Un semplice patch plot è ottenuto dal seguente codice Python -
from bokeh.plotting import figure, output_file, show
p = figure(plot_width = 300, plot_height = 300)
p.patch(x = [1, 3,2,4], y = [2,3,5,7], color = "green")
output_file('patch.html')
show(p)
Produzione
cerotti()
Questo metodo viene utilizzato per disegnare più patch poligonali. Ha bisogno dei seguenti argomenti:
1 | xs | Le coordinate x per tutte le patch, fornite come un "elenco di elenchi". |
2 | ys | Le coordinate y per tutte le patch, fornite come un "elenco di elenchi". |
Come esempio del metodo patches (), esegui il codice seguente:
from bokeh.plotting import figure, output_file, show
xs = [[5,3,4], [2,4,3], [2,3,5,4]]
ys = [[6,4,2], [3,6,7], [2,4,7,8]]
fig = figure()
fig.patches(xs, ys, fill_color = ['red', 'blue', 'black'], line_color = 'white')
output_file('patch_plot.html')
show(fig)
Produzione
Marcatori a dispersione
I grafici a dispersione sono molto comunemente usati per determinare la relazione bi-variata tra due variabili. La maggiore interattività viene aggiunta a loro utilizzando Bokeh. Il grafico a dispersione si ottiene chiamando il metodo scatter () dell'oggetto Figure. Utilizza i seguenti parametri:
1 | X | valori o nomi di campo delle coordinate x centrali |
2 | y | valori o nomi di campo delle coordinate y del centro |
3 | taglia | valori o nomi di campo delle dimensioni in unità dello schermo |
4 | pennarello | valori o nomi di campo dei tipi di marker |
5 | colore | imposta il riempimento e il colore della linea |
Le seguenti costanti del tipo di marker sono definite in Bokeh: -
- Asterisk
- Circle
- CircleCross
- CircleX
- Cross
- Dash
- Diamond
- DiamondCross
- Hex
- InvertedTriangle
- Square
- SquareCross
- SquareX
- Triangle
- X
Il seguente codice Python genera un grafico a dispersione con segni di cerchio.
from bokeh.plotting import figure, output_file, show
fig = figure()
fig.scatter([1, 4, 3, 2, 5], [6, 5, 2, 4, 7], marker = "circle", size = 20, fill_color = "grey")
output_file('scatter.html')
show(fig)