Bokeh - Handlungen mit Glyphen
Jedes Diagramm besteht normalerweise aus einer oder mehreren geometrischen Formen wie z line, circle, rectangle,usw. Diese Formen enthalten visuelle Informationen über den entsprechenden Datensatz. In der Bokeh-Terminologie werden diese geometrischen Formen als Gylphen bezeichnet. Bokeh-Grundstücke gebaut mitbokeh.plotting interfaceVerwenden Sie einen Standardsatz von Werkzeugen und Stilen. Es ist jedoch möglich, die Stile mit den verfügbaren Plotwerkzeugen anzupassen.
Arten von Grundstücken
Verschiedene Arten von Plots, die mit Glyphen erstellt wurden, sind nachstehend aufgeführt:
Liniendiagramm
Diese Art der Darstellung ist nützlich, um die Bewegungen von Punkten entlang der x- und y-Achse in Form einer Linie zu visualisieren. Es wird zur Durchführung von Zeitreihenanalysen verwendet.
Barplot
Dies ist normalerweise nützlich, um die Anzahl jeder Kategorie einer bestimmten Spalte oder eines bestimmten Felds in Ihrem Dataset anzugeben.
Patch-Plot
Dieses Diagramm zeigt einen Bereich von Punkten in einem bestimmten Farbton an. Diese Art von Plot wird verwendet, um verschiedene Gruppen innerhalb desselben Datensatzes zu unterscheiden.
Streudiagramm
Diese Art der Darstellung wird verwendet, um die Beziehung zwischen zwei Variablen zu visualisieren und die Stärke der Korrelation zwischen ihnen anzuzeigen.
Verschiedene Glyphenplots werden durch Aufrufen der entsprechenden Methode der Figurenklasse gebildet. Das Figure-Objekt wird durch folgenden Konstruktor erhalten:
from bokeh.plotting import figure
figure(**kwargs)
Das Figure-Objekt kann durch verschiedene Schlüsselwortargumente angepasst werden.
Sr.Nr. | Titel | Legen Sie den Titel für die Handlung fest |
---|---|---|
1 | x_axis_label | Titel der x-Achse einstellen |
2 | y_axis_label | Titel für y-Achse einstellen |
3 | plot_width | Stellen Sie die Breite der Figur ein |
4 | plot_height | Stellen Sie die Höhe der Figur ein |
Liniendiagramm
Das line() methodDas Objekt "Figur" fügt der Bokeh-Figur ein Linienzeichen hinzu. Es benötigt x- und y-Parameter als Datenfelder, um ihre lineare Beziehung darzustellen.
from bokeh.plotting import figure, show
fig = figure()
fig.line(x,y)
show(fig)
Der folgende Code rendert ein einfaches Liniendiagramm zwischen zwei Wertesätzen in der Form Python-Listenobjekte -
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)
Ausgabe
Barplot
Das Figurenobjekt verfügt über zwei verschiedene Methoden zum Erstellen eines Balkendiagramms
hbar ()
Die Balken werden horizontal über die Plotbreite angezeigt. Dashbar() method hat die folgenden Parameter -
Sr.Nr. | y | Die y-Koordinaten der Zentren der horizontalen Balken. |
---|---|---|
1 | Höhe | Die Höhen der vertikalen Balken. |
2 | Recht | Die x-Koordinaten der rechten Kanten. |
3 | links | Die x-Koordinaten der linken Kanten. |
Der folgende Code ist ein Beispiel für horizontal bar mit 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)
Ausgabe
vbar ()
Die Balken werden vertikal über die Plothöhe angezeigt. Dasvbar() method hat folgende Parameter -
Sr.Nr. | x | Die x-Koordinaten der Zentren der vertikalen Balken. |
---|---|---|
1 | Breite | Die Breiten der vertikalen Balken. |
2 | oben | Die y-Koordinaten der Oberkanten. |
3 | Unterseite | Die y-Koordinaten der unteren Kanten. |
Der folgende Code wird angezeigt 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)
Ausgabe
Patch-Plot
Ein Diagramm, das einen Raumbereich in einer bestimmten Farbe schattiert, um einen Bereich oder eine Gruppe mit ähnlichen Eigenschaften anzuzeigen, wird in Bokeh als Patch-Diagramm bezeichnet. Das Abbildung-Objekt verfügt zu diesem Zweck über die Methoden patch () und patches ().
patch ()
Diese Methode fügt der angegebenen Abbildung eine Patch-Glyphe hinzu. Die Methode hat die folgenden Argumente:
1 | x | Die x-Koordinaten für die Punkte des Patches. |
2 | y | Die y-Koordinaten für die Punkte des Patches. |
Eine einfache patch plot wird durch den folgenden Python-Code erhalten -
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)
Ausgabe
Patches ()
Diese Methode wird verwendet, um mehrere polygonale Patches zu zeichnen. Es braucht folgende Argumente -
1 | xs | Die x-Koordinaten für alle Patches werden als "Liste der Listen" angegeben. |
2 | ys | Die y-Koordinaten für alle Patches werden als "Liste der Listen" angegeben. |
Führen Sie als Beispiel für die patches () -Methode den folgenden Code aus:
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)
Ausgabe
Streumarker
Streudiagramme werden sehr häufig verwendet, um die Bi-Variate-Beziehung zwischen zwei Variablen zu bestimmen. Die verbesserte Interaktivität wird ihnen mit Bokeh hinzugefügt. Das Streudiagramm wird durch Aufrufen der Scatter () -Methode des Figure-Objekts erhalten. Es verwendet die folgenden Parameter -
1 | x | Werte oder Feldnamen von Mittelpunkt x-Koordinaten |
2 | y | Werte oder Feldnamen der mittleren y-Koordinaten |
3 | Größe | Werte oder Feldnamen von Größen in Bildschirmeinheiten |
4 | Marker | Werte oder Feldnamen von Markertypen |
5 | Farbe | Füll- und Linienfarbe einstellen |
Folgende Markertypkonstanten sind in Bokeh definiert: -
- Asterisk
- Circle
- CircleCross
- CircleX
- Cross
- Dash
- Diamond
- DiamondCross
- Hex
- InvertedTriangle
- Square
- SquareCross
- SquareX
- Triangle
- X
Der folgende Python-Code generiert ein Streudiagramm mit Kreismarkierungen.
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)