image image


Worknote: Pygal, ein SVG-Chart-Generator für Python

Da blättere ich doch heute früh in der S-Bahn fröhlich in dem Buch »Python Crash Course. A Hands-On, Project-Based Introduction to Programming« von Eric Matthes herum und finde dort einen Hinweis auf das Python-Paket Pygal, eine Bibliothek, die SVG-Charts aus Python heraus generiert. Diese Charts lassen sich dann ohne Probleme direkt in HTML-Seiten einbinden. Das mußte ich doch sofort ausprobieren.

Pygal ist im Python Package Index zu finden, also habe ich erst einmal mit

pip install pygal

das Paket installiert. Entgegen anderslautenden Gerüchten konnte ich Pygal nicht mit conda install -c activisiongamescience pygal installieren, dafür soll das pure Python-Paket ohne weitere Abhängigkeiten sowohl unter Python 2.7 wie auch unter Python 3 funktionieren (getestet habe ich aber bisher nur Python 3).

Dann habe ich aus der Dokumentation ein kleines Programm entnommen und für meine Verhältnisse angepaßt:

import pygal                                                       # First import pygal
import os

bar_chart = pygal.Bar()                                            # Then create a bar graph object
bar_chart.add("Fibonacci", [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55])  # Add some values

path = os.path.join(os.getcwd(), "sources/pygal/svg/fib.svg")
bar_chart.render_to_file(path)

Dieser Sechszeiler (im Original ist es sogar nur ein Vierzeiler, die beiden anderen Zeilen brauchte ich für meine Pfadanpassung) brachte folgendes Ergebnis:

image

Für sechs Zeilen Python-Code doch nicht schlecht, oder? Es ist tatsächlich eine echte SVG-Datei, die sich verlustfrei verkleinern und vergrößern läßt und auch responsiv auf die verschiedenen Devices reagiert. Damit ist Pygal eine in vielen Fällen überlegene Alternative zu Bokeh. Die Dokumentation zu Pygal ist hervorragend und ausführlich und die Anzahl der unterstützten Chart-Typen dürfte für die meisten Anwendungsfälle ausreichend sein.

Links

Natürlich habe ich Pygal stante pede auch eine Seite in meinem Wiki spendiert.

War sonst noch was? Ach ja, das Buch »Python Crash Course. A Hands-On, Project-Based Introduction to Programming« ist tatsächlich zu empfehlen.


1 (Email-) Kommentar


Das Buch gibt es auch in Deutsch Klasse!

– Reiner K. (Kommentieren) (#)


(Kommentieren) 

image image



Ü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.

Der Besuch dieser Webseite wird aktuell von der Piwik Webanalyse erfaßt. Hier können Sie der Erfassung widersprechen.

Diese Seite verwendet keine Cookies. Warum auch? Was allerdings die iframes von Amazon, YouTube und Co. machen, entzieht sich meiner Kenntnis.


Werbung


Werbung


image  image  image
image  image  image


image