Informationsvisualisierung UE
SS 2005
Matthias Froschauer
9726227
533
ThemeRiver
"ThemeRiver" ist eine Implementierung der Idee nach dem IEEE-Paper "ThemeRiver: In Search of Trends, Patterns, and Relationshps" (Susan Havre et al.). Dabei werden ähnich wie bei einem Balkendiagramm Datenwerte auf der vertikalen Achse dargestellt (jeweils vertikal zentriert). Anschleißende werden die Werte zwischen den Datenpunkten entlang der horizontalen Achse interpoliert. Das Resultat ist ein "Fluß" für jedes betrachtete Element. ThemeRiver ist eine Visualisierungsmethode, die helfen soll, Trends, Muster, unerwartetes Auftreten bzw. Nichtauftreten von Themen oder bestimmten Daten zu identifizieren. Sie dient dazu, Daten die sich über die Zeit hinweg ändern, darzustellen.
tr1.png
Dateneingabe
Die Dateneingabe erfolgt über XML-Files, die folgenden Aufau haben müssen.
tr2.png
Als Beispiel kann die Datei KFZ_Neuzulassungen.xml betrachtet werden.
Programmfunktionen
Die River-Ansicht kann in beide Richtungen gestreckt werden. Dadurch können Bereiche, die eine kleine Fläche einnehmen, genauer betrachtet werden. Dazu werden die Regler am linken oberen Fensterrand auf eine geeignete Position gestellt. Der gesamte River kann außerdem frei in alle Richtungen bewegt werden, indem man ihn bei gedrückter linker Maustaste in die gewünschte Richtung "zieht".
tr3.png
Die Checkboxes neben den Reglern dienen zum Ein- und Ausblenden von graphischen Elementen im Fenster. Im Folgenden werden die einzelnen Möglichkeiten hierfür aufgelistet. Mithilfe des Buttons "Reset view" wird die ursprüngliche Ansicht wiederhergestellt.
Die Farben für die einzelnen Rivers werden beim Laden eines Files zufällig ausgewählt und zugewiesen. Falls die Farbzusammenstellung geändert werden soll, etwa weil einzelne Farben zu ähnlich sind und die Rivers nicht mehr ausreichend unterschieden werden können, ist es über den Button "Color settings" möglich, jedem River eine individuelle Farbe zuzuweisen.
tr4.png
In einem separaten Fenster wird eine Liste der Rivers angezeigt, zusammen mit der zugewiesenen Farbe. Durch einen Klick auf "Color chooser" kann über den Windows-Farbwähler eine neue Farbe für den zuvor gewählten River eingestellt werden.
Zusätzlich ist noch zu erwähnen, dass sich die Größe der Flüsse der Fenstergröße anpasst. Maximiert man etwa das Programmfenster, werden auch die Rivers vergrößert. Auf diese Weise bleibt die gewählte Ansicht auch bei einer Änderung der Fenstergröße erhalten.
Spline Interpolation
Die Kurven für die Flüsse wurden hier mithilfe der "Catmull-Rom Spline Interpolation" berechnet. Diese Interpolation erzeut eine kubische Kurve, die durch die Datenpunkte läuft. Dabei werden für jeden Streckenabschnitt 4 Datenpunkte benötigt, dazu ein Parameter, der von 0 bis 1 läuft und dadurch den Streckenabschnitt darstellt. Das heißt, je vier Punkte werden mit einer Matrix M multipliziert, der Parameter bestimmt die Position des berechneten Kurvenpunktes. Folgende Abbildung verdeutlicht diesen Vorgang.
tr5.png
Der folgende Code erzeugt ein Kurvenstück zwischen v2 und v3. Weiter Information dazu sind auf lighthouse3d.com zu finden.
tr6.png