für eine Aufgabe muss ich einen bestimmten Graph mit Bokeh erstellen.
Als Beispiel habe ich folgendes hinbekommen:
1--> package importiert
2-->Daten für die x- und y-Achse als Listen erstellt
3-->Figure erstellt (mit Hintergrundfarbe, größe, Beschriftung...)
4-->eine oder zwei Linien hinzugefügt
5-->hovertool erstellt
Code: Alles auswählen
###############################################################################
#for working in jupiter
from bokeh.io import output_notebook
import numpy as np
#for plotting figure
from bokeh.plotting import figure
#for show and save
from bokeh.plotting import output_file, show
#for the hovertool
from bokeh.models import HoverTool
###############################################################################
#values
x_axis = [1,2,3,4,5,6,7,8,9,10]
y_axis1 = [12,53,89,34,2,56,6,68,7,44]
y_axis2 = [46,535,868,347,2,42,55,23,68,99]
###############################################################################
#only for notebook
output_notebook()
###############################################################################
#figure
graph = figure(title = "Example",
x_axis_label = "x-Achse",
y_axis_label = "y-Achse",
plot_width = 400,
plot_height = 300,
x_axis_type = "datetime")
#backgroundcolor
graph.background_fill_color="#f5f5f5"
###############################################################################
#add a line
graph.line(x_axis, y_axis1, legend="line1", line_width=2)
graph.line(x_axis, y_axis2, legend="line2", line_width=2)
###############################################################################
#add a hovertool
graph.add_tools(HoverTool(tooltips=[
('x-wert', "@x{0.00 a}" ),
('y1-wert', "@y{0.00 a}"),
('y2-wert', "@y_axis2{0.00 a}")], #creats the Hovertool
mode='vline'))
show(graph)
Problem 1:
der Graph selbst soll keine Linie sein sondern eine Ausgefüllte Fläche unterhalb der Linie:
"http://bokeh.pydata.org/en/0.12.0/docs/ ... chart.html"
Dazu gibts auch unter genanntem Link eine Gute Beschreibung mit dem Problem, dass ich nicht verstehe wie ich anstatt Data einfach meine x und y Werte einfügen kann. Sprich Anstatt einer Figure eine Area mit meinen Daten Erstelle.
Code: Alles auswählen
area1 = Area(data, title="Area Chart", legend="top_left", #x&y-Werte??
xlabel='time', ylabel='memory')
Die Anleitung unter diesem Link: https://bokeh.pydata.org/en/latest/docs ... _area.html
erscheint mir noch viel Komplizierter
Problem 2:
Das Hovertool wird Selbstverständlich zweimal pro Linie Angezeigt soll aber eigentlich nur Einer Linie Folgen und Anzeigen, den Wert der Zweiten Linie lässt sich eh einbauen.