Nachdem ich Anaconda mit IPython installiert hatte, mußte ich es natürlich auch testen. Das sind die ersten kleinen Dinge, die mir aufgefallen sind:
Die Matplotlib blockiert das Eingabeterminal, solange ihr interaktive Fenster geöffnet ist. Das heißt, sie erwartet den show()
-Befehl erst am Ende der Session. Das mag für Batch-Verarbeitung in Ordnung sein, während der Entwicklung möchte man aber interaktiv seinen Plot verschönern oder verschlimmbessern können. Wenn man allerdings IPython so aufruft:
ipython --pylab
Oder für die Qt-Konsole:
ipython qtconsole --pylab
dann erhält man eine spezielle Matplotlib-Unterstützung, die es einem nicht nur erspart, die Matplotlib zu importieren (das ist mit der --pylab-Option
schon erledigt), sondern der show()
-Befehl blockiert auch nicht mehr das Eingabefenster oder -Terminal.
Nach dem ersten plot()
-Befehl öffnet sich das interaktive Fenster und man ist trotzdem in der Lage, weitere Befehle in das Terminal zu hacken, die dann auch sofort von Matplotlib übernommen werden.
Sowohl die Qt-Konsole wie auch das Notebook besitzen die Möglichkeit, die Plots – so wie man es zum Beispiel von Mathematica gewohnt ist – inline, das heißt in der Konsole oder im Notebook darzustellen. Dazu muß man IPython mit der Option
ipython qtconsole --pylab=inline
oder für das Notebook
ipython notebook --pylab=inline
aufrufen.
Natürlich verliert man dann die Möglichkeiten des interaktiven Fensters, bekommt aber dafür – besonders schön beim (HTML-) Notebook – eine vollständige Dokumentation seiner Experimente, die man so auch weitergeben und veröffentlichen kann.
Bekanntlich arbeite ich oft und gerne mit dem freien (frei wie Freibier) Texteditor TextWrangler, weil dieser die Möglichkeit besitzt, den Shebang auszuwerten und dann mit einem einfachen Menü-Befehl (#!
) das Skript aus dem Editor heraus zu starten. Seltsamerweise funktioniert das mit Anaconda nur bedingt. Zwar kann ich mit
#!/Users/username/anaconda/bin/python
das Anaconda-Python aufrufen, nicht jedoch mit der Abkürzung
#!~/anaconda/bin/python
Außerdem läuft der »normale« Run
-Befehl ins Leere, Run in Terminal
funktioniert jedoch einwandfrei.
Still diggin’!
Ü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