Skip to content
Snippets Groups Projects
Commit 2b85d98e authored by Sabed Ger's avatar Sabed Ger
Browse files

Anwendung Vis 1

parent 34e40e8c
No related branches found
No related tags found
No related merge requests found
No preview for this file type
......@@ -49,7 +49,7 @@ Die dritte Visualisierung gibt einen Überblick über die gesamten Daten. Die Da
%In diesem Abschnitt geben sie einen kurzen Überblick über die Daten und verwendeten Visualisierungen. Dann benennen sie die Beiträge ihres Projekts. Diese Beiträge müssen sie in den hinteren Teilen des Berichts genauer ausführen und belegen.
\section{Daten}
Die Daten \cite{Daten} sind zufällig generiert und enthalten Informationen zu Studenten: Geschlecht, Rasse / ethische Gruppe, Bildungsgrad der Eltern, Ausgaben beim Mittagessen, ob der Prüfungsvorbereitungskurs abgeschlossen wurde und eine Bewertung zwischen 0 bis 100 für je Mathematik, Lesen und Schreiben. Es sind insgesamt 1000 Zeilen an Daten, die publiziert wurden, man kann sich allerdings jederzeit mehr Daten generieren lassen. In dieser Arbeit werden nur die publizierten 1000 Zeilen verwendet, da die Menge für die Visualisierungszwecke hier ausreicht.
Die Daten sind zufällig generiert und enthalten Informationen zu Studenten: Geschlecht, Rasse / ethische Gruppe, Bildungsgrad der Eltern, Ausgaben beim Mittagessen, ob der Prüfungsvorbereitungskurs abgeschlossen wurde und eine Bewertung zwischen 0 bis 100 für je Mathematik, Lesen und Schreiben. Es sind insgesamt 1000 Zeilen an Daten, die publiziert wurden, man kann sich allerdings jederzeit mehr Daten generieren lassen. In dieser Arbeit werden nur die publizierten 1000 Zeilen verwendet, da die Menge für die Visualisierungszwecke hier ausreicht.
Da es keine Daten aus der realen Welt sind, sondern zufällig generierte Daten sind, sind die Beobachtungen auf diesen Daten nur so aussagekräftig für die reale Welt, wie realitätsnah die Generierung dieser Daten ist. Auf \href{http://roycekimmons.com/tools/generated_data/exams}{http://roycekimmons.com/tools/generated\_{}data/exams}, wo man sich die Daten generieren lassen kann, wird empfohlen die Daten nur für Trainingszwecke zu verwenden.
......@@ -65,21 +65,23 @@ Da es sich um maschinell generierte Daten handelt, sind alle Daten vollständig
Sinnvoll ist aber eine Durchschnittliche Leistung für jeden Studenten zu berechnen. In den Daten sind die Leistungen für Mathematik, Lesen und Schreiben gegeben. Ein Durchschnitt über diese drei Werte erlaubt es einfacher die Gesamtleistung der Studenten miteinander zu vergleichen, was für die Fragestellungen äußerst hilfreich ist.
Außerdem werden gewisse Quantile für die Daten berechnet, die für die Visualisierungen notwendig sind. Quantile sind notwendig um verschiedene Verteilungen von Daten gegenüberzustellen. Es werden immer Quantile zu den durchschnittlichen Leistungen innerhalb gewählter Gruppen berechnet. So ist es möglich zu vergleichen welche der Gruppen leistungsfähiger ist. Im Abschnitt 3 wird geklärt welche Quantile genau berechnet werden.
%Welche Datenvorverarbeitungsschritte sind notwendig? Beschreiben Sie die einzelnen Schritte und begründen sie sie, z.B. warum werden manche Daten weggelassen, über welche Mengen werden Durchschnitte berechnet, warum sind die so berechneten Werte aussagekräftiger als andere Werte.
\section{Visualisierungen}
\subsection{Analyse der Anwendungsaufgaben}
Bei den Lehrveranstaltungen und Vorbereitungskursen für Prüfungen haben Lehrende die Aufgabe diese Veranstaltungen so zu gestalten, dass diese den Studenten beim lernen helfen. Bei dieser Gestaltung ist unter anderem auch die Frage wichtig wie sehr und ob die Veranstaltung für die Studenten nützlich ist. Um das herauszufinden hilft eine Gegenüberstellung der Verteilungen der Leistung der Studenten, die den Vorbereitungskurs abgeschlossen haben und der Leistung der Studenten, die den Vorbereitungskurs nicht abgeschlossen haben. Dadurch bekommen die Lehrenden ein Bild davon ob und wie ihr Vorbereitungskurs hilfreich ist.
Nützlich dabei zu wissen ist auch für welche Studenten es eher hilfreich ist und für welche weniger. Das hilft nicht nur den Lehrenden sich auf gewisse Studentengruppen etwas mehr zu konzentrieren, sondern auch den Studenten zu entscheiden, ob sie an dem Vorbereitungskurs teilnehmen sollten oder nicht. Denn dann sehen sie anhand der Studentengruppen ob sie eher in der Gruppe sind, denen der Vorbereitungskurs viel bringt oder eher in der Gruppe sind, denen der Vorbereitungskurs weniger hilft.
Bei der Frage an welche Studentengruppen sich Lehrende eher konzentrieren sollten, die mehr Hilfe beim lernen benötigen als andere Studenten, ist eine der Unterscheidungen welchen Bildungsgrad die Eltern haben. Daher ist es wichtig zu analysieren ob und welchen Einfluss der Bildungsgrad der Eltern auf die Leistungen der Studenten hat.
Bei der Frage an welche Studentengruppen sich Lehrende eher konzentrieren sollten, die mehr Hilfe beim lernen benötigen als andere Studenten, ist eine der Unterscheidungen welchen Bildungsgrad die Eltern haben. Daher ist es wichtig zu analysieren ob und welchen Einfluss der Bildungsgrad der Eltern auf die Leistungen der Studenten hat. Auch Unterscheidungen hinsichtlich der anderen Attribute kann bei dieser Fragestellung hilfreich sein.
%Analysieren sie die konkreten Anwendungsaufgaben. Welche Visualisierungen helfen den Personen, die die Software verwenden, sinnvolle mentale Modelle aufzubauen. Sind diese mentalen Modelle für sie notwendig, um die Aufgaben lösen zu können?
\subsection{Anforderungen an die Visualisierungen}
Die Visualisierungen sollen ein Bild darüber vermitteln ob der Vorbereitungskurs hilfreich ist. Dazu bietet sich eine Gegenüberstellung der Verteilungen der entsprechenden Leistungen der Studenten an.
Die Visualisierungen sollen auch vermitteln welche Studentengruppen eher dazu geneigt sind schlechtere Leistungen zu erzielen und somit mehr Hilfe beim lernen von den Lehrenden benötigen als andere Studentengruppen; mit dem Fokus auf die Unterscheidung des Bildungsgrades der Eltern.
Die Visualisierungen sollen auch vermitteln welche Studentengruppen eher dazu geneigt sind schlechtere Leistungen zu erzielen und somit mehr Hilfe beim lernen von den Lehrenden benötigen als andere Studentengruppen.
Weiterhin sollen die Visualisierungen zeigen welchen Studentengruppen der Vorbereitungskurs besser hilft und welchen weniger.
Optional könnten die Visualisierungen zusätzlich zeigen welchen Studentengruppen der Vorbereitungskurs besser hilft und welchen weniger.
%Leiten sie Anforderungen an das Design der Visualisierungen ab, die sich durch ihre Analyse des Zielproblems ergeben.
\subsection{Präsentation der Visualisierungen}
......@@ -129,7 +131,7 @@ Zum besseren Verständnis der Visualisierung wird oberhalb der eigentlichen Visu
%Sie müssen begründen, warum und wiegut ihre Designentscheidungen die erstellten Anforderungen erfüllen.
Diese Visualisierung gibt einen Überblick darüber welche Studenten eher dazu geneigt sind bessere Leistungen zu erzielen und welche Studenten eher dazu geneigt sind schlechtere Leistungen zu erzielen. So kann man in dieser Visualisierung gleichzeitig mehrere Einflussfaktoren miteinander vergleichen und schauen welche Bedingungen erfüllen die Studenten, die gute Leistungen erzielen und welche Bedingungen erfüllen die Studenten, die schlechte Leistungen erzielen. So ist beispielsweise auffallend, dass die meisten Studenten, die gute Leistungen erzielen mindestens eine von 2 Bedingungen erfüllen: sie haben den Vorbereitungskurs abgeschlossen oder ihre Eltern haben einen hohen Bildungsgrad. Studenten, die einen Bildungsgrad geringer als blau haben und den Vorberteitungskurs nicht abgeschlossen haben sind eher selten unter den besten Leistungen zu finden. Ebenso kann man erkennen, dass unter den schlechtesten Leistungen die meisten den Vorbereitungskurs nicht abgeschlossen haben und / oder deren Eltern einen niedrigen Bildungsgrad haben. Durch die vielen Daten die in dieser Visualisierung dargestellt sind, ist es aber auch nicht leicht in dieser Menge von bunten Icons Informationen zu finden. Da muss man etwas genauer hingucken und sich erstmal mit der Codierung der Daten, die oben in der Legende gut abgelesen werden kann, vertraut machen um Aussagen treffen zu können. Genau deswegen dient diese Visualisierung auch nur dem Überblick und gibt die Interaktionsmöglichkeit zu anderen Visualisierungen zu wechseln, in denen man die Daten etwas genauer betrachten kann.
\includegraphics[scale=0.52]{Bilder/Visualisierung3.jpg}
\includegraphics[scale=0.46]{Bilder/Visualisierung3.jpg}
%Weiterhin müssen sie begründen, warum die gewählte visuelle Kodierung der Daten für das zulösenden Problem passend ist.
Diese Icons ermöglichen kompakt mehrdimensionale Daten darzustellen, sodass man gleichzeitig alle Daten auf einen Bildschirm bekommen kann und trotzdem die verschiedenen Werte der verschiedenen Daten ablesen kann. Die Verwendung von Farbe ist dabei notwendig um auch Dimensionen darzustellen, die mehr als 2 verschiedene Werte einnehmen können. Ebenso bauen Menschen gerne zu Farben bestimmte Assoziationen auf. So würde beispielsweise jeder dem männlichen Geschlecht einen Blauton vergeben und dem weiblichen Geschlecht einen Rotton. Solche Assoziationen bei der Wahl der Farben zu verwenden hilft auch den Betrachtern die Daten aus den Farben wieder zu decodieren. Solche Assoziationen wurden bei der Visualisierung auch versucht bei den nominalen Daten, die übrigens auch binär sind, zu verwenden. Die Daten Rasse / ethnische Gruppe, die nur von A bis E durchnummeriert sind und die Daten Bildungsgrad der Eltern können als Ordinale Daten betrachtet werden. Für Ordinale Daten passt gut eine Farbabstufung. Um die verschiedenen Werte aber trotzdem gut voneinander unterscheiden zu können wurde eine Farbabstufung gewählt, die möglichst gut voneinander verschiedene Farben beinhaltet und dabei auch eine recht bekannte Farbabstufung sein sollte: Weiß, Grün, Blau, Purpur, Gelb, Rot. Die Sortierung der Daten nach durchschnittlicher Punktzahl ermöglicht es leicht zu erkennen wo Icons zu Studenten mit hoher Leistung und wo Icons zu Studenten mit geringerer Leistung sind, sodass Vergleiche in Bezug auf die Leistung vereinfacht werden. Alternativ statt solcher Bunter Icons könnte man beispielsweise Chernoff-Gesichter verwenden. Allerdings sollte es schwierig sein beispielsweise anhand der Breite der Nase den Bildungsgrad abzulesen, sodass Chernoff-Gesichter für nicht-binäre Daten nicht so gut geeignet sind, während bei farbigen Icons verschiedene Farben genutzt werden können. Ebenso passen Farben gut zu nominalen und ordinalen Daten.
......@@ -157,9 +159,11 @@ Damit unterstützen die Visualisierungen so ziemlich alle sinnvolle Interaktions
Das Elm-Programm besteht aus 3 Modulen: Das Hauptmodul StudentsPerformanceInExams, Plots und Util. StudentsPerformanceInExams ist das Hauptmodul, dessen main-funktion verwendet wird. Das Model hat einige Einträge für das Verwalten der Http-Anfrage: In httpState wird gespeichert ob es gerade am Laden ist oder schon erfolgreich ist oder fehlgeschlagen ist. In fullTexts wird der empfangene Text aus der Http-Anfrage gespeichert. In error wird der Fehler gespeichert, falls es einen Fehler gibt. Falls alles gut läuft, dann wird zunächst aus der erhaltenen Html-Datei der csv-String extrahiert und dann an den csv-Decoder weitergegeben, der dann die Daten aufbaut und ebenfalls in das Model einspeichert. Im Model wird außerdem gespeichert welche Visualisierung gerade gezeigt wird. Beim Start des Programms wird zunächst einfach nur eine Tabelle mit allen Daten angezeigt. In einem select (Funktioniert nicht auf allen Browsern. Funktionsfähig unter Firefox.) kann man dann die Visualisierung auswählen. Dann wird noch das Model des Plots im Model gespeichert, welches besonders für die 2. Visualiserung notwendig ist, damit dort die Interaktionen funktionieren. Das Hauptmodul enthält im Grunde genommen nur die main-Funktion und alle ihre Bestandteile sowie alle Funktionen, die fest mit der Datenstruktur der spezifischen Daten zusammenhängt. In Plots sind alle Plots sowie die Datenverarbeitung, welche unabhängig von den spezifischen Daten verläuft (also nur noch Typen wie XyData oder Listen verwendet). Dort ist die Scatterplotfunktion vorzufinden, die in Visualisierung 1 verwendet wird. Diese musste nicht mehr verändert werden seit der letzten Übungsserie, in der sie verwendet wurde. Ebenso ist die ParallelCoordsPlot-Funktion in diesem Modul. Diese Funktion musste nur noch geringfügig erweitert werden im Vergleich zur Übung, um die Auswahl von 2 Dimensionen, die dann in einem Scatterplot dargestellt werden. Das aufwändigste war die neue coloredShapesPlot-Funktion zu erstellen, die die 3. Visualisierung aufbaut. Mit Icons hatten wir uns in der Übung nicht beschäftigt, sodass ich diese Funktion vollständig neu aufbauen musste. Für diesen Plot habe ich neue Datenstrukturen erstellt, die die notwendigen Daten Strukturiert an diese Plot-Funktion übergeben. Eines davon ist MultiDimNominalData. Dieser Typ ist ähnlich zu der bisher bekannten MultiDimData mit dem Unterschied, dass nicht nur die Beschriftung der Dimensionen notwendig ist, sondern auch die Beschriftung jedes einzelnen Wertes jeder Dimension, damit die Zuordnung der restlichen Attribute zu dem Wert möglich ist. Da die Punkte gruppiert nach durchschnittlicher Leistung sind, ist hier auch eine Liste von Listen von entsprechenden Punkten notwendig. Ein solcher Punkt ist analog dem MultiDimPoint mit dem Unterschied, dass die Daten selbst Strings sind. Auch notwendig für die Plotfunktion ist die Information zu den Icons selbst. Mit dem neuen Typ ColoredShape wird die Art der Shapes definiert: Für jeden Wert jeder Dimension wird eine Farbe gespeichert in insgesamt einer Liste von Listen von Farben. Außerdem werden die Koordinaten der Sektoren hier gespeichert. Zussätzlich wird die gesamte Breite und Höhe eines Icons abgespeichert. Diese werden mit der Konstruktorfunktion dieses Typs automatisch berechnet. Die Plot-Funktion selbst nimmt dann nur noch diese Daten und platziert die Icons mit den festgelegten Koordinaten, den Farben und den Werten immer hin. Die Umrechnung von den relativen Koordinaten, die in der Definition des Shapes gespeichert sind, in die im Plot tatsächlich verwendeten Koordinaten erfolgt per Svg.translate. Das Ergibt im Ergebnis eine Architektur für die ColoredShapes, in der leicht die Form sowie die Farben des Icons angepasst werden können. Dafür müssen nur die Argumente an die Plot-Funktion verändert werden. Im Modul Util sind einige allgemein benutzbare Funktionen. Hauptsächlich für Listen aber auch ein paar andere.
\section{Anwendungsfälle}
Präsentieren sie für jede der drei Visualisierungen einen sinnvollen Anwendungsfall in dem ein bestimmter Fakt, ein Muster oder die Abwesenheit eines Musters visuell festgestellt wird. Begründen sie warum dieser Anwendungsfall wichtig für die Zielgruppe der Anwenderinnen ist. Diskutieren sie weiterhin, ob die oben beschriebene Information auch mit anderen Visualisierungstechniken hätte gefunden werden können. Falls dies möglich wäre, vergleichen sie die den Aufwand und die Schwierigkeiten ihres Ansatzes und der Alternativen.
%Präsentieren sie für jede der drei Visualisierungen einen sinnvollen Anwendungsfall in dem ein bestimmter Fakt, ein Muster oder die Abwesenheit eines Musters visuell festgestellt wird. Begründen sie warum dieser Anwendungsfall wichtig für die Zielgruppe der Anwenderinnen ist. Diskutieren sie weiterhin, ob die oben beschriebene Information auch mit anderen Visualisierungstechniken hätte gefunden werden können. Falls dies möglich wäre, vergleichen sie die den Aufwand und die Schwierigkeiten ihres Ansatzes und der Alternativen.
\subsection{Anwendung Visualisierung Eins}
Ein sinnvoller Anwendungsfall für die erste Visualisierung ist wenn Lehrende einen optionalen Vorbereitungskurs für eine Prüfung führen und wissen möchten ob und wie sehr ihr Kurs für die Studenten hilfreich ist. Um sich diese Frage zu beantworten sammeln sich diese Lehrende Daten zu ihrem Kurs: die Leistungen der Studenten in der Prüfung, die ihren Kurs besucht haben und die Leistungen der Studenten in der Prüfung, die ihren Kurs nicht besucht haben. Setzten diese Lehrende dann diese Daten in die Visualisierung ein, so werden ihnen die 2 Studentengruppen gegenüber gestellt. In der Visualisierung wird eine Kurve erkennbar sein, die aus den Punkten gebildet wird. Anhand der Lage und der Form dieser Kurve können die Lehrenden sich unterschiedliche Schlüsse ziehen: Liegen die Punkte alle näher an der Achse, auf der die Studenten sind, die den Kurs nicht abgeschlossen haben, dann wissen die Lehrenden, dass ihr Kurs den Leistungen der Studenten schadet. Liegen die Punkte alle näher an der Achse, auf der die Studenten sind, die den Kurs abgeschlossen haben, dann wissen die Lehrenden, dass ihr Kurs den Leistungen der Studenten hilft. Liegen die Punkte alle so ziemlich auf der x=y Geraden, so wissen die Lehrenden, dass ihr Kurs den Studenten nicht hilft aber auch nicht schadet. Außerdem kann es sein, dass manche Punkte über der x=y Geraden sind und manche Punkte unter dieser Geraden sind oder was viel üblicher ist, dass verschiedene Punkte unterschiedlich weit von der x=y Geraden liegen. Wenn die Entfernung zu dieser Geraden stark variiert und irgendwelche Formen, die diese Punkte bilden erkennbar sind, dann sehen die Lehrenden, dass Studenten, die gewisse Leistungen erbringen, der Vorbereitungskurs mehr oder weniger hilfreich ist. Der Eigentliche Vergleich beruht hier auf der Wahrnehmung der eindimensionalen Entfernung der Punkte von der x=y Geraden. Für die Frage welchen Studenten der Kurs eher hilfreich ist muss man hier den visuellen Vergleich der Entfernungen wahrnehmen. Die Wahrnehmung einer Entfernung, also ob eine Entfernung vorhanden ist bzw von welcher Seite der Geraden die Punkte liegen ist sehr einfach. Somit ist die Visualisierung sehr effektiv für die Lösung dieser Fragestellung. Eine Alternative zu dieser Visualisierung wäre der Box-Plot, wie schon im Abschnitt 3 erwähnt. Beim Boxplot lässt sich diese Fragestellung, also ob ein Vorbereitungskurs hilfreich ist auch sehr einfach vergleichen. Denn beim Boxplot werden einige wichtige Quantile wie z.B. der Median markiert. Legt man 2 Boxplots untereinander, sodass die gleiche horizontale Stelle die gleiche Leistung bedeutet, so kann man auch hier anhand der Entfernung zweier Markierungen feststellen welche der beiden Studentengruppen leistungsfähiger ist. Allerdings muss man hier alle Quantile einzeln miteinander Vergleichen, da sie nur als einzelne Markierungen auf der Box dargestellt sind, was etwas schwieriger sein kann als bei einem QQ-Plot wie in der ersten Visualisierung: Denn beim QQ-Plot gibt es sehr viele Punkte, die wir Menschen schnell zu einer Kurve oder Geraden umwandeln, was uns die Möglichkeit gibt auf ein mal für alle Punkte festzustellen ob sie über der x=y Geraden liegen oder unterhalb. Für die Fragestellung wie sehr hilfreich der Vorbereitungskurs ist für die unterschiedlichen Studentengruppen, die unterschiedliche Leistungen erbringen, ist der Boxplot eher wenig geeignet, da dort nur wenige Markierungen miteinander verglichen werden können, während beim QQ-Plot sehr viele Punkte sind, sodass man ein schärferes Bild erhält.
\subsection{Anwendung Visualisierung Zwei}
\subsection{Anwendung Visualisierung Drei}
\section{Verwandte Arbeiten}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment