Matplotlib
Für meine Diplomarbeit, meine Publikationen und derzeit für meine Dissertation habe ich eine Python-Bibliothek wirklich lieben gelernt: Matplotlib.
Es handelt sich hierbei um eine extrem umfangreiche Bibliothek, die unter Python ein mit Matlab vergleichbares Arbeiten ermöglichen will. Während die numerischen Routinen, insbesondere die Array-Klasse, von Numpy und Scipy zur Verfügung gestellt werden (die ich sicherlich bald mit einem Beitrag würdigen werde) biete Matplotlib zahlreiche Möglichkeiten der Visualisierung in 2d und 3d (wobei der Schwerpunkt auf 2d liegt).
Anstatt lange zu erklären, starten wir am besten mit einem Beispiel:
from pylab import * def f(t): s1 = cos(2*pi*t) e1 = exp(-t)$ return multiply(s1,e1) t1 = arange(0.0, 5.0, 0.1) t2 = arange(0.0, 5.0, 0.02) plot(t1, f(t1), 'bo', t2, f(t2), 'k') title('Abklingende Schwingung', size='large', ) text(2, 0.65, r'$\cos(2 \pi t) \exp(-t)$', color='k') xlabel('Zeit (s)', style='italic') ylabel('Spannung (mV)') show()
Das resultierende Bild könnt ihr euch unten ansehen. Dort könnt ihr auch noch einige weitere Beispielplots sehen, die alle von matplotlib.sourceforge.net/gallery.html stammen.
Matplotlib ist ein wirklich sehr aktives Projekt, ein wunderbares Beispiel, was die Open-Source-Community möglich machen kann. Der Funktionsumfang wächst stetig. Einige Features sind:
- interaktives und nicht-interaktives 2d-Plotten in Publikationsqualität
- (optionale) Verwendung von Latex zur Erstellung von Formeln
- Integration in eigene Programme möglich (als Widget)
- leichter Einstieg, aber dennoch volle Konfigurierbarkeit
- 3d-Plotten vorhanden, aber noch nicht voll ausgereift
- und und und...
An dieser Stelle bleibt mir nur noch, auf die hervorragende Dokumenation zu verweisen: http://matplotlib.sourceforge.net/