Die Verwendung von Perl wie kann ich Diagramme erstellen mithilfe von Werten in eine CSV-Datei?
Ich bin neu hier und brauche einen Hinweis, wie diese Aufgabe. Ich habe eine csv-Datei mit den folgenden Beispieldaten:
site,type,2009-01-01,2009-01-02,....
X,A,12,10,...
X,B,10,23,...
Y,A,20,33,...
Y,B,3,12,...
and so on....
Erstellen Sie ein perl-Skript zum Lesen von Daten aus der csv-Datei (gemäß der Benutzer-Eingabe), und erstellen Sie Punkt(XY) - Diagramme. Sagen wir mal so, ich möchte ein Diagramm erstellen für Datum 2009-01-01-und Typ B. der Benutzer sollte Die Eingabe so etwas wie "2009-01-01 B", und das Diagramm erstellt werden soll mit den Werten aus CSV-Datei.
Kann jemand bitte empfehlen Sie mir einige code, um mit zu beginnen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich brauche, um einige streudiagramme, die meine eigene, so habe ich mich mit dem Modul vorgeschlagen, in den anderen Antworten. Für meinen Geschmack, die Datenpunkte produziert von GD::Graph::Kartesisches sind viel zu groß, und das Modul stellt keine Methoden zur Kontrolle dieses Parameters, so dass ich gehackt meine Kopie von
Cartesian.pm
(Suche nachiconsize
wenn Sie möchten, das gleiche zu tun).GD::Graph::Cartesian
finden Sie die module (auf meinem system war es inperl/site/lib/GD/Graph/Cartesian.pm
) und Suche füriconsize
. Sie werden sehen, dass die Standard-Größe ist 7. Sie können einfach die Standardeinstellung ändern, also einen anderen Wert. Noch besser wäre eine änderung derinitialize()
Methode zu ermöglichen, unterschiedliche Größen angegeben werden, wenn Sie rufennew()
.@xy_points
array ist eine Liste von Punkten graphisch dargestellt, wobei jeder Punkt gespeichert, die eine array-Referenz:[X, Y]
(die X-Koordinate für den 1. Punkt würde gespeichert werden in$xy_points[0][0]
- und die Y-Koordinate in$xy_points[0][1]
). Wenn Sie immer noch Schwierigkeiten haben, Schritt für Schritt durch den code mit Perl-debugger. Sie können auch drucken Sie die@xy_points
Datenstruktur mithilfe derData::Dumper
Modul. Wenn Sie nicht verstehen, wie die Arbeit mit komplexen Datenstrukturen in Perl, schau mal hier: perldoc.perl.org/index-tutorials.html (vor allemperlreftut
,perldsc
, undperllol
).Nicht mit code. Beginnen Sie mit CPAN.
CSV und Scatter
Hier gehen Sie, einige code, um mit zu beginnen:
Anstelle von GD kann man, natürlich, mit welchem Modul Sie möchten.
OK, zum Zwecke der Unterhaltung nur:
Hinzufügen von Achsen und allgemein Verbesserung in Streudiagramm — eine wirklich enttäuschende Modul — Links als eine übung für den Leser.
Bitte beachten Sie, dass ich immer zu betrügen, wenn es um SQL. Ich würde mich über eine richtige
JOIN
, die entfällt die Notwendigkeit für@x
,@y
undeach_array
.Ausgabe: