Jochen schrieb:
> ich würde gerne eine große Menge Messdaten, die als CSV vorliegen,
> automatisiert in Form von Reports aufbereiten.
Was heißt "eine große Menge"? Wieviele Zeilen, wieviele Spalten?
> Endprodukt ist ein von Latex erzeugtes PDF, das Kopf- und Fußzeilen,
> einige Plots, Tabellen und automatisch erzeugten Text enthält.
>
> Der Workflow sieht so aus:
> - CSV-Datei parsen
> - Messdaten nach verschiedenen Gesichtspunkten auswerten, dazu müssen
> Filteralgorithmen und Statistik-Funktionen angewendet werden, teilweise
> gibt es noch zusätzliche Berechnungen mit exp() und ln() -
> wahrscheinlich ist eine sinnvolle Art der Zwischenspeicherung oder
> Indizierung nötig
> - Aufrufen von gnuplot, um Plots als PDF zu generieren
> - Aufrufen von Latex, um die Plots zusammen mit zusätzlichen
> Informationen schick aufzubereiten
>
> Welche Skriptsprache ist eurer Meinung nach am besten für so etwas
> geeignet?
All das dürfte jede mir bekannte Skriptsprache können, trotzdem schreit
die Aufgabenstellung IMHO nach Python. Das ist besonders leicht erlern-,
les-, wart- und veränderbar, trotzdem schon "im Grundzustand" äußerst
performant (für eine Skriptsprache, versteht sich). Insbesondere in der
wissenschaftlichen Datenanalyse und -Aufbereitung ist Python sehr
beliebt, weil es durch kompilierte C-Module wie numpy, scipy und Pandas
bis auf die Ebene von kompiliertem Maschinencode beschleunigt werden
kann, ohne auf Klarheit, Komfort und Usability von Python verzichten zu
müssen. Zur Not läßt sich Python mittels Boost::Python in C++
integrieren und umgekehrt, oder mit nuitka in kompilierbares C++
übersetzen.
Obendrein bietet Python mit Matplotlib ein sehr leistungsfähige
Bibliothek zur visuellen Aufbereitung der Daten an, der Preis hierfür
ist jedoch eine gewisse Komplexität. Daher verwende ich Matplotlib, wenn
es richtig gut aussehen soll, und Gnuplot eher für schnelle, einfache
Hacks.
Um Deinen LaTeX-Code zu schreiben, verfügt Python über eine eingebaute
Template-Engine (string.Template), die allerdings weitgehend unbekannt
ist, zudem stehen leistungsfähige Template-Frameworks wie Jinja2 zur
Verfügung. Außerdem existiert ein Python-LaTeX-Framework namens Plastex,
mit dem ich jedoch keine eigenen Erfahrungen habe -- YMMV.
LaTeX kann übrigens selbst Diagramme aus Daten generieren, über die
Optik, Performanz und Qualität dieses Feature weiß ich allerdings leider
nichts.
Für erste interaktive Analysen bietet sich im Übrigen auch noch iPython
an, das ist eine interaktive Shell mit stark erweiterten Möglichkeiten.