Quiq::Gd::Component::Axis - Achse eines XY-Plot
Quiq::Gd::Component
Numerische X-Achse definieren:
$ax = Quiq::Axis::Numeric->new( orientation => 'x', font => Quiq::Gd::Font->new('gdSmallFont'), length => 400, min => 0, max => 100, );
Achsengrafik-Objekt erzeugen:
$g = Quiq::Gd::Component::Axis->new(axis=>$ax);
Vertikalen Platzbedarf der Achsengrafik ermitteln:
$height = $g->height;
Achsengrafik in Bild rendern:
$g->render($img,$x,$y);
Ein Objekt der Klasse repräsentiert eine gezeichnete X- oder Y-Achse einschließlich Ticks und Labeln. Mit den Methoden $g->width() und $g->height() kann der Platzbedarf der Achse ermittelt werden, bevor sie konkret gezeichnet wird.
$g->width()
$g->height()
Referenz auf die Achsen-Definition.
Farbe der Achse.
Farbe der Schrift.
Farbe der Sub-Ticks.
Farbe der Ticks.
Richtung, die die Ticks der Achse sowie die Label gezeichnet werden. Mögliche Werte bei einer X-Achse: 'u' (up), 'd' (down). Mögliche Werte bei einer Y-Achse: 'l' (left), 'r' (right).
Abstand zwischen Tick und Label.
Länge eines beschrifteten Tick.
Quelltext:
r1-gd-graphic-axis-example
[Bild nur im Browser sichtbar]
$g = $class->new(@keyVal);
Instantiiere die Grafik einer X- oder Y-Achse mit den Darstellungseigenschaften @keyVal (s. Abschnitt ATTRIBUTES) und liefere eine Referenz auf das Objekt zurück.
$g->render($img,$x,$y,@keyVal); $class->render($img,$x,$y,@keyVal);
Zeichne die Achse in Bild $img an Position ($x,$y). Die Postion ($x,$y) befindet sich am Anfang der jeweiligen Achsenlinie, also an der Position des Achsen-Minimums.
Y-Achse max + | | | |($x,$y) min x----------+ X-Achse min max
$length = $g->length;
Liefere die Länge der Achse (= Achsenlinie) in Pixeln.
$width = $g->width;
Liefere die Gesamt-Breite der Achsen-Grafik in Pixeln. Im Falle einer X-Achse kann die Achsen-Grafik wegen überstehender Label-Texte links und rechts breiter sein als die Länge der Achse.
Liefere die Gesamt-Höhe der Achsen-Grafik in Pixeln. Im Falle einer Y-Achse kann die Achsen-Grafik wegen überstehender Label-Texte oben und unten höher sein als die Länge der Achse.
1.204
Frank Seitz, http://fseitz.de/
Copyright (C) 2022 Frank Seitz
This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Quiq, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Quiq
CPAN shell
perl -MCPAN -e shell install Quiq
For more information on module installation, please visit the detailed CPAN module installation guide.