diagramme.pl


Übersicht

diagramme.pl --help | --version

diagramme.pl [ --verbose | --no_verbose ]
--intlen INTLEN --qntprz QNTPRZ
--viewport BREITExHOEHE --margin OBEN:RECHTS:UNTEN:LINKS
--in IN --out OUT

Optionen

--help

Gibt eine kurze Hilfe aus

--version

Gibt kurze Hinweise zum Programm und die Version aus.

--verbose

Erhöht den Umfang der Meldungen nach STDERR.

--no_verbose

Unterdrückt die Ausgabe von Meldungen. Die Optionen --verbose und --no_verbose werden der Reihe nach ausgewertet.

--intlen INTLEN

INTLEN ist eine positive Zahl. Der Wertebereich auf der x-Achse (das Interval [xmin, xmax]) wird in annähernd gleichlange Abschnitte geteilt, deren Länge INTLEN nicht überschreitet:

Die Anzahl n der Abschnitte ist die kleinste ganze Zahl, für die xmax - xmin <= n * INTLEN. Der erste „Teilungspunkt” bei n verbleibenden Abschnitten ist xmin. Ausgehend vom Teilungspunkt x bei n verbleibenden Abschnitten ist der nächste Teilungspunkt x + round((xmax - x)/n) bei n - 1 verbleibenden Abschnitten.

--qntprz QNTPRZ

QNTPRZ ist der Prozentsatz der kleinen und der großen Zahlenreihen, durch die eine „untere” und eine „obere” Ausgleichskurve gelegt wird.

Die Zahlenreihen einer Gruppe (Verteilung der „Pinwandzettel”) werden nach den letzten Zahlen der Reihen geordnet.

Ist n die Anzahl der Zahlenreihen, so sei q die kleinste ganze Zahl, für die 100 * q >= QNTPRZ * n. Durch die ersten q und die letzten q Zahlenreihen wird eine Ausgleichskurve gelegt.

--viewport BREITExHOEHE

Die Breite und Höhe der zu erzeugenden Grafik-Ausgaben (Diagramme), s. punktediagramm.rng, Element size.

--margin OBEN:RECHTS:UNTEN:LINKS

Die Größen der Ränder der Diagramme. Der Ausgabebereich in Bild-Koordinaten ergibt sich aus der Größe (s. VIEWPORT abzüglich der Ränder, s. punktediagramm.rng, Element scloutrange.

--in IN

IN ist der Pfad der Eingabedatei.

Die Eingabedatei ist eine Textdatei, die zeilenweise gelesen wird. Zeilen, die mit dem Zeichen # beginnen, sind Kommentare. Andere Zeilen enthalten je eine Zahlenreihe. Die Elemente einer Zeile sind durch Leerzeichen oder Komma oder Folgen dieser Zeichen getrennt. Das erste Element einer Zeile ist der Name einer Gruppe, zu der die Zahlenreihe gehört, die folgenden Elemente sind die Zahlen der Zahlenreihe.

--out OUT

Das Programm gibt für jede Gruppe von Zahlenreihen eine XML-Datei aus. OUT enthält den Platzhalter ${key}. ${key} wird durch den Namen der Gruppe ersetzt. Das Ergebnis ist der Pfad der Ausgabedatei.

Beschreibung

Eine spezielle Version der Datei pinw.js (Quelltext) kann Informationen zur Verteilung der „Pinwandzettel” ausgeben. Dieses Skript verarbeitet die Ausgabe von pinw.js (Quelltext) bei der Einstellung pinwinfo=detailed_field_count. Die aneinandergehängten Ausgaben von pinw.js (Quelltext) sind in einer Eingabedatei IN enthalten.

Dieses Skript gibt XML-Dateien aus (XML-Namensraum http://herbaer.de/xmlns/20200803/punktediagramm/, s. punktediagramm.rng) aus denen graphische Darstellungen erzeugt werden können (s. pd_svg.xslt). Es wird vom Skript diagramme (Quelltext) aufgerufen.

Software-Voraussetzungen

Das Programm ist mit Perl Version 5.24.1 entwickelt. Es benutzt außer Standard-Modulen die folgenden Module:

Herbaer::Ausgleichskurve, Ausgleichskurve.pm (Quelltext)

Berechnet eine Ausgleichskurve durch eine Menge von Punkten.

Herbaer::Punktediagramm Punktediagramm.pm (Quelltext)

Erzeugt Daten zur graphischen Darstellung.

Herbaer::Readargs

Die Funktionen read_args aus diesem Modul verarbeitet die Befehlszeilenargumente, die Funktion print_message_with_values gibt die Hilfe mit den aktuellen Einstellungen aus.

Herbaer::Replace

Ersetzt Platzhalter in Zeichenketten.