19.01.2015 Aufrufe

Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...

Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...

Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

178 Kapitel 10 Implementierung<br />

10.1.7 Zeichenfläche<br />

Das Diagramm wird mit Hilfe der Methode UpdateCanvas erstellt, die aufgerufen<br />

wird, wenn sich das DiagramDataModel ändert. Diese benötigt als Parameter ein<br />

gültiges DiagramDataModel, welches ein CellSet beinhaltet. Innerhalb der Methode<br />

wird zunächst geprüft, ob ein gültiger Datensatz vorliegt. Als gültig wird anerkannt,<br />

wenn sowohl Measure wie auch Dimension auf den Positionsachsen liegen, aber<br />

auch ein CellSet vorhanden ist. Im nächsten Schritt werden die alten Datenpunkte<br />

im Diagramm gelöscht, da diese nicht mehr gültig sind. Die Berechnung der<br />

Farbwerte der DiagramPoints geschieht durch die Methode CreateColorGradient<br />

der Unterstützungsklasse DiagramUtils. Ebenso stellt die Klasse die Methode<br />

CreateSizes zur Bestimmung der Größen der Datenpunkte bereit. Nachdem sowohl<br />

Größe wie auch Farbe für jeden Datenpunkt bestimmt wurden, erfolgt die Berechnung<br />

der Position jedes Punktes im Diagramm. Damit die Legende das Farbmodell erhalten<br />

kann, wird durch das Setzen des ColorModels ein PropertyChanged-Event gefeuert.<br />

10.1.8 DiagramUtils<br />

Die Klasse DiagramUtils ist als Unterstützungsklasse zu sehen, die Methoden für<br />

Farbberechnung, Größenberechnung <strong>und</strong> Positionsbestimmung bereit hält. Für die<br />

Bestimmung der Farbe von Datenpunkten stehen zwei Farbverläufe zur Verfügung. Für<br />

Kennzahldaten, also Daten mit Zwischenwerten wird ein Farbverlauf von grün über gelb<br />

nach rot gewählt. Für Dimensionswerte ist ein größeres Farbspektrum von rot nach blau<br />

über zehn Stützpunkte gewählt worden. Es ist dabei sichergestellt, dass in jeder der zehn<br />

Klassen in etwa gleich viele Elemente enthalten sind, da Dimensionswerte immer im<br />

gleichen Farbabstand dargestellt werden müssen. Die Bestimmung der exakten Farben<br />

erfolgt durch lineare Interpolation.<br />

Die Bestimmung der Größe erfolgt ebenfalls durch lineare Interpolation zwischen<br />

Minimum- <strong>und</strong> Maximum-Wert der Achse.<br />

Weiterhin enthält diese Klasse noch eine Hilfsmethode zur Berechnung des Skalierungsfaktors,<br />

welcher für die Positionierung von Datenpunkten bei Measures benötigt<br />

wird, <strong>und</strong> eine Methode zur Bestimmung des Abstandes von zwei Punkten bei<br />

Dimensionswerten.<br />

Die Methode PrintTo<strong>Visual</strong> wird genutzt, um eine beliebige Erweiterung der<br />

Klasse UIElement in eine Instanz der Klasse <strong>Visual</strong> umzuwandeln. Dies wird z. B.<br />

benötigt, um Screenshots der aktuellen Diagrammansicht zu generieren, die in der<br />

Zustandsspeicherung verwendet werden.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!