image image


Thread: IPython und Bokeh – Erste Fragen

image image

Ich experimentiere gerade ein wenig mit Bokeh herum, dem Plotting-Interface für Python (und IPython), das HTML-Output generiert. Ich habe mich dabei strikt an die Vorgaben gehalten, doch entgegen dem Tutorial des Herstellers schaffe ich es nicht, zwei Ausgaben in einem Plot unterzubringen. Es geht um dieses simple Skript:

from bokeh.plotting import *
from numpy import *
x = linspace(-2*pi, 2*pi, 100)
y = cos(x)
output_file("cos.html")
line(x, y, color="red")
scatter(x, y, marker="square", color="blue")
show()

Sieht so einfach aus und das oben erwähnte Tutorial zeigt auch einen Screenshot, in dem ein Plot beide Ausgaben überlappend zeigt. Bei mir jedoch erzeugt das Skript zwei separate Plots, einen Line-Plot und einen Scatter-Plot.

Das Verhalten ist übrigens identisch, wenn ich dieses Skriptchen ganz normal mit Python 2.7.6 (ohne IPython aufrufe). Es ist also kein IPython-Fehler.

Im Notebook sieht es auch nicht anders aus. Nachdem ich die Zeile

output_file("cos.html")

durch

output_notebook()

ersetzt habe, zeigt der show()-Befehl aber immer nur den letzten aufgerufenen Plot, also den Scatter-Plot. Nur wenn ich diesen auskommentiere, bekomme ich auch den Line-Plot zu sehen. Natürlich bekomme ich beide, wenn ich jedem von ihnen ein show() spendiere, aber das ist es ja gerade nicht, was ich möchte, ich möchte beide in einem Plot. Har irgendjemand von Euch da draußen eine Idee … ??


1 (Email-) Kommentar


im Tutorial zu Bokeh scheinen sie etwas vergessen zu haben. Folgendes scheint zu funktionieren:

# cos.py
from bokeh.plotting import *
from numpy import *

x = linspace(-2*pi, 2*pi, 100)
y = cos(x)
output_file("cos.html")
line(x, y, color="red")
hold()
scatter(x, y, marker="square", color="blue")
show()

Aus dem User Guide (http://bokeh.pydata.org/user_guide.html):

We are going to be combining several glyph renderers on to one plot, first we need to tell Bokeh to reuse the same plot using hold: hold()

– Mirko O. (Kommentieren) (#)


(Kommentieren)  IPython und Bokeh – Erste Fragen bitte flattrn




Über …

Der Schockwellenreiter ist seit dem 24. April 2000 das Weblog digitale Kritzelheft von Jörg Kantel (Neuköllner, EDV-Leiter, Autor, Netzaktivist und Hundesportler — Reihenfolge rein zufällig). Hier steht, was mir gefällt. Wem es nicht gefällt, der braucht ja nicht mitzulesen. Wer aber mitliest, ist herzlich willkommen und eingeladen, mitzudiskutieren!

Alle eigenen Inhalte des Schockwellenreiters stehen unter einer Creative-Commons-Lizenz, jedoch können fremde Inhalte (speziell Videos, Photos und sonstige Bilder) unter einer anderen Lizenz stehen.


Werbung


Werbung


image  image  image
image  image  image