AA_123rf-14187405_VigromKaewphong-123RF.jpg

© VigromKaewphong, 123RF

Pyspread: Tabellenkalkulation mit Python-Anbindung

Durchgeschlängelt

Mit Features überladene Tabellenkalkulationen gibt es zur Genüge. Dass eine ausgefeilte Spreadsheat-Anwendung auch einsteigertauglich sein kann, demonstriert das auf Python basierende Pyspread.

Seit Beginn der elektronischen Datenverarbeitung zählt die Tabellenkalkulation als separate und häufig genutzte Anwendung zu den Standardprogrammen für den Büroalltag. Das hier im Mittelpunkt stehende Pyspread [1] steht daher in einer direkten Linie mit den größeren und bekannteren Vertretern der Gattung, wie Gnumeric, Kspread/Calligra Sheets , Calc von Libre- und OpenOffice sowie PlanMaker aus dem kommerziellen Paket SoftMaker Office.

Aus der Masse der Konkurrenz hebt sich Pyspread deswegen wohltuend ab, weil es nicht überladen wirkt und somit auch für Einsteiger handhabbar bleibt (Abbildung 1). Es umfasst alle grundlegenden Mechanismen, um tabellenbasiert zu arbeiten und die entsprechenden Berechnungen auszuführen. Weiterhin sticht hervor, dass es für Formeln und Auswertungen innerhalb des Rechenblatts statt einer eigenen Makrosprache eine vorhandene Skriptsprache verwendet. Damit folgt Pyspread einem ähnlichen Ansatz wie Calc aus Siag Office, setzt jedoch auf das populäre Python statt auf das bei Siag bevorzugte Scheme.

Abbildung 1: Ein klassisches Fahrtenbuch mit Gesamtsumme.

Das selbst in Python geschriebene Pyspread fasst dabei eine größere Auswahl an Sprachkonstrukten und Schreibweisen mit speziellem Bezug auf eine Tabellenkalkulation zusammen. Damit kann der Interpreter Berechnungsformeln innerhalb einer annehmbaren Zeitspanne vollständig verarbeiten und das Ergebnis zeitnah als Wert oder Grafik darstellen.

Das Ausführen der Skripting-Inhalte müssen Sie vorab explizit aktivieren und mit einem GnuPG-Schlüssel kryptografisch absichern. Letzteres begrenzt das unbeabsichtigte Ausführen von Python-basiertem Schadcode, der sich möglicherweise als harmlose Formel im Rechenblatt verbirgt.

Veröffentlichung und Entwicklungsziel

Das unter der GPLv3 lizenzierte Pyspread findet sich in den Software-Archiven aller gängigen Distributionen. Genügt Ihnen die derzeit als stabil deklarierte Version 0.3.3 (Debian 8, Ubuntu 15.10) nicht, weichen Sie auf die Version 1.0 von der Webseite des Projekts oder auf die Entwicklerversion [2] aus. Für die ersten Schritte genügt jedoch auch die Version 0.3 beziehungsweise die bereits in LU 03/2015 angerissene Version 0.4 [3], die beispielsweise für Arch Linux und Slackware zur Verfügung steht. Version 1.0 hat im Wesentlichen nur ein paar Knöpfe mehr, beispielsweise für den direkten PDF-Export.

Pyspread wirkt aufgrund seiner grafischen Benutzeroberfläche auf Basis von Gnome/GTK recht einsteigertauglich. Sobald Sie es verwenden, werden Sie jedoch bald bemerken, dass die Entwickler auch die Vorlieben und Denkweisen von Technikern bei der Bedienung berücksichtigt haben. Das Team um Martin Manns hat es sich als Ziel gesetzt, das "most pythonic spreadsheet" zu erstellen.

Dabei gibt jede Zelle ein einzelnes Python-Objekt zurück, das sich von anderen Zellen aus referenzieren lässt. Diese Objekte dürfen neben Python-Ausdrücken auch Zeichenketten, Ganz- und Gleitkommazahlen sowie Listen und Matrizen beinhalten. Das ermöglicht ein Andocken an die Bibliothek Numpy [4] für Vektoren und Matrizen sowie grafische Darstellungen mithilfe von Matplotlib [5]. Sofern Sie damit vertraut sind, können Sie Ihr bereits erlerntes Python-Wissen direkt einbringen.

Programmaufbau

Die Anordnung der Komponenten in Pyspread folgt dem klassischen Schema für Tabellenkalkulationen. Im Zentrum steht das Rechenblatt mit einzelnen Zeilen und Spalten. Darüber thront eine kombinierte Menü- und Werkzeugleiste plus Eingabezeile. Sie ändern die Zelleninhalte direkt oder über die Eingabezeile.

Die einzelnen Schalter erlauben einen direkten Zugriff auf die Dateioperationen, das Gestalten von Text und Tabellenzellen (Schriftart, Farbe, Größe, Hintergrund, Umrandung) sowie das Drehen und Ausrichten der Zelleninhalte. Weiterhin sind das Sortieren von Zellen und das Suchen und Ersetzen vorbereitet, auch unabhängig von Groß- und Kleinschreibung sowie insbesondere anhand regulärer Ausdrücke.

Beim Datenaustausch beherrscht Pyspread den Export als kommaseparierte Werte (CSV) und – ab Version 1.x – auch als SVG und PDF. Ein Im- und Export für ältere Microsoft Excel-Daten gelingt auf der Basis von der Bibliothek Xlrd/Xlwt [6]. Für das Darstellen von Diagrammen sowie die Datenvisualisierung kommt die Matplotlib zum Einsatz, die Integration von Bilddaten erfolgt über die Bibliothek des Wx-Frameworks [7].

Abbildung 1 zeigt einen Ausschnitt eines elektronischen Fahrtenbuchs mit fünf Spalten: Anzahl für die Häufigkeit der zurückgelegten Strecke, von für den Startort, nach als Fahrtziel sowie die Einzel- und Gesamtdistanz. Darunter sehen Sie die Summe der aufgelaufenen Kilometer. Die Balkengrafik rechts daneben visualisiert die Verhältnisse der Distanzen. Ändern Sie die Werte in den zugrundeliegenden Tabellenzellen, berechnet Pyspread die Formeln erneut und aktualisiert die Darstellung in den Ergebniszellen sowie der Grafik.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Angetestet
    Backup-Assistent Autoarchive 1.2.0, SSH-Client Putty 0.64 pre, Tabellenkalkulation Pyspread 0.40, Menü-Helfer Wmconfig 1.4.9
  • Sieben Brücken
    Computer wurden ursprünglich als Rechenmaschinen entwickelt. Am Beispiel eines Fahrtenbuchs zeigen wir, wie Sie mit Bordmitteln das Maschinchen zu Ihren Gunsten werkeln lassen. Dabei stellen wir Ihnen sieben Varianten der Problemlösung vor.
  • Neues auf den Heft-DVDs
    Nur mit dem optimalen System und der richtigen Software nutzen Sie das volle Potenzial Ihres Rechners. Mit der Heft-DVD erhalten Sie nicht nur topaktuelle Distributionen, sondern auch die passenden Programme zu den Artikeln.
  • Vier Office-Pakete im Vergleich
    Wer das Wort "Office" hört, denkt entweder an das freie OpenOffice oder ein kommerzielles Konkurrenzprodukt aus Redmond. Abseits der beiden Schwergewichte findet sich jedoch so manch interessante Alternative.
  • Python-Skript kommentiert Kommandozeilen

    Peter Hofmann aus der Arch-Linux-Gemeinde hat ein Python-Skript namens Explain geschrieben, mit dem sich die Bestandteile einer Kommandozeile in Ascii-Art erläutern lassen.
Kommentare

Infos zur Publikation

LU 11/2017: Server für Daheim

Digitale Ausgabe: Preis € 8,50
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 3 Antworten
Hallo, bis jetzt hatte ich immer nur mit
IT-Kurse
Alice Trader, 26.09.2017 11:35, 2 Antworten
Hallo liebe Community, ich brauche Hilfe und bin sehr verzweifelt. Ih bin noch sehr neu in eure...
Backup mit KUP unter Suse 42.3
Horst Schwarz, 24.09.2017 13:16, 3 Antworten
Ich möchte auch wieder unter Suse 42.3 mit Kup meine Backup durchführen. Eine Installationsmöglic...
kein foto, etc. upload möglich, wo liegt mein fehler?
kerstin brums, 17.09.2017 22:08, 5 Antworten
moin, zum erstellen einer einfachen wordpress website kann ich keine fotos uploaden. vom rechne...
Arch Linux Netzwerkkonfigurationen
Franziska Schley, 15.09.2017 18:04, 0 Antworten
Moin liebe Linux community, ich habe momentan Probleme mit der Einstellung des Lan/Wlan in Arc...