Formeln und Referenzen auf einzelne Zellen

Als Grundlage aller Berechnungen in Pyspread dient ein dreidimensionaler Referenzvektor S. Er besteht aus den Werten für die jeweilige Zeile, Spalte und der Nummer des Rechenblatts. Als Trennzeichen zwischen den einzelnen Werten dient das Komma, alle Indizes verwenden als Basis null.

Dabei lassen sich sowohl relative als auch absolute Angaben zur Zelle vornehmen. Für relative Referenzen stehen die Variablen X, Y und Z zur Verfügung. Sie beinhalten die aktuelle Zeile und Spalte sowie die Nummer des Rechenblatts. Die Zelle in der nächsten Zeile desselben Rechenblatts sprechen Sie mit der Schreibweise S[X+1,Y,Z] an.

Das Fahrtenbuch-Beispiel verwendet absolute Angaben. Um etwa die Kilometeranzahl für die erste Strecke in Zeile 1 zu ermitteln, enthält Spalte 4 die Formel S[1,0,0] * S[1,3,0]. Damit berechnen Sie die Häufigkeit mal Einzeldistanz einer Strecke mit absoluten Referenzen auf eine Zelle. Die Gesamtsumme aller Distanzen entspricht dann einer Summe über mehrere Zellen einer Spalte. Gültige Formeln dafür lauten beispielsweise:

  • Variante 1: sum([S[r,4,0] for r in range(1,6)])
  • Variante 2: sum(S[1:6,4,0])

Variante 1 folgt einem funktionalen Programmieransatz und nutzt die Summenfunktion über die Spalte 4 in Kombination mit einer For-Schleife, die über die Variable r im Wertebereich von 1 bis 6 iteriert. Damit lesen Sie die Inhalte der Zellen in den Zeilen 1 bis 6 aus. Die deutlich kompaktere Variante 2 greift zur Python-typischen Schreibweise für einen Bereich: Die Zeilen 1 bis 6 geben Sie als Zahlenwerte getrennt durch einen Doppelpunkt in der Summenfunktion an. Das errechnete Ergebnis ist identisch zu Variante 1 – und häufig für Nichtprogrammierer leichter zu lesen.

Bei sum() handelt es sich nicht um die einzige Funktion aus dem Python-Universum, die Sie verwenden können. Die Tabelle "Pyspread-Standardfunktionen (Auswahl)" bietet einen kurzen Überblick der Möglichkeiten. Funktionen aus anderen Python-Modulen binden Sie über eine Zuweisung nach folgendem Schema ein:

Variable = __import__("Modul")

Nach dieser Zuweisung steht die entsprechende Funktion aus Modul für alle Zellen Ihres Rechenblatts zur Verfügung.

Pyspread-Standardfunktionen (Auswahl)

Funktion Ergebnis
abs() absoluter Zahlenwert
all() true, falls kein Element einer Liste leer
any() true, falls mindestens ein Element einer Liste leer
max() größter Wert einer Liste
min() kleinster Wert einer Liste
pow() Potenz eines Werts
round() gerundeter Zahlenwert
sum() Summe einer Liste

Diagramme erstellen und einbinden

Diagramme verdeutlichen die Zusammenhänge zwischen Zahlenwerten. Pyspread versteckt seine Diagrammfunktionen hinter dem unscheinbaren Schalter mit den beiden farbigen Diagrammlinien. Zum Erstellen der Grafiken bedient es sich der bereits erwähnten Funktionsbibliothek Mathplotlib.

Ein Klick auf das Symbol öffnet ein Dialogfenster zur Diagrammgestaltung (Abbildung 2) – das links die Einstellungen für Beschriftungen und Skalen enthält, in der Mitte jene für Diagrammdaten (Werte) und rechts eine Vorschau des resultierenden Diagramms. Allerdings wurde dieses Dialogfeld für sehr große Bildschirme konzipiert. Zwar lässt es sich vergrößern und die Spaltenbreiten dynamisch an die Größe des Fensters anpassen, doch auf einem kleineren Bildschirm sehen Sie dennoch kaum etwas. Das betrifft insbesondere die mittlere Spalte, in der Sie den Datenbereich für das Diagramm eingeben (möchten). Erst einmal müssen Sie zu den Eingabefeldern kommen – und das gelang im Test nur, indem wir das Fenster massiv vergrößerten.

Abbildung 2: Das Dialogfenster zur Gestaltung von Diagrammen.

Das Fazit für den Punkt "Diagramme" lautet daher: etwas hakelig. Die vorliegenden Ergebnisse entstanden als Resultat stoischen Herumprobierens, da die Dokumentation hier nicht weiterhilft – es gibt zu diesem Punkt schlicht keine –, aber auch die Kontext-Hilfe zu vielen Eingabefeldern unbrauchbar ist.

Abgesehen von den eigensinnigen Spaltenbreiten bleibt unklar, was in welche Eingabefelder für das Diagramm gehört – Einzelwerte oder Listen? – und insbesondere, in welcher Form man diese angeben muss. Die oben gepriesene Bereichsschreibweise funktioniert hier nicht, dafür aber eine Menge mit Einzelwerten der Form (Wert1, Wert2, ...). Ein Bezug auf einzelne Zellen gelingt unter Verwenden des Referenzvektors S, beispielsweise S[1,2,3] für die zweite Zeile, dritte Spalte im vierten Rechenblatt.

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 12/2017: Perfekte Videos

Digitale Ausgabe: Preis € 5,95
(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

Broadcom Adapter 802.11n nachinstallieren
Thomas Mengel, 31.10.2017 20:06, 2 Antworten
Hallo, kann man nachträglich auf einer Liveversion, MX Linux auf einem USB-Stick, nachträglich...
RUN fsck Manually / Stromausfall
Arno Krug, 29.10.2017 12:51, 1 Antworten
Hallo, nach Absturz des Rechners aufgrund fehlendem Stroms startet Linux nicht mehr wie gewohn...
source.list öffnet sich nicht
sebastian reimann, 27.10.2017 09:32, 2 Antworten
hallo Zusammen Ich habe das problem Das ich meine source.list nicht öffnen kann weiß vlt jemman...
Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 6 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...