Beim JSM 2019, Ich nehme an einer Sitzung am teil Dynamische interaktive Datenvisualisierung . Als ich zum ersten Mal vom Vorsitzenden der Sitzung, Blanton Godfrey, eingeladen wurde, einen Vortrag zu halten, war mein erster Gedanke: „Sicher, JMP verfügt über viele dynamische und interaktive Datenvisualisierungen.“ Ein zweiter Gedanke folgte jedoch schnell: „Was macht das wirklich? bedeuten? Heutzutage ist alles interaktiv. “
Das hat mich auf den Weg gebracht, verschiedene Methoden der Interaktivität zu kategorisieren. Das oberste Ziel ist es, eine Klassifizierung der Interaktivität der Datenvisualisierung zu definieren, die beim Vergleichen von Produkten oder bei der Diskussion einzelner Implementierungen hilfreich ist. In diesem ersten Versuch habe ich neun Techniken zusammen mit Beispielvideos der darin enthaltenen Interaktionen klassifiziert JMP .
- Graph Gebäude
- Auswahlverknüpfung
- Zeilenfilterung
- Schwebedetails
- Model Tuning
- Ästhetisches Mapping
- Spaltenumschaltung
- Volume Slicing
- Achsenskalierung
Ich verwende in meinen Beispielvideos denselben Datensatz. Es enthält mehr als 60 Spalten mit demografischen, wirtschaftlichen und Wahldaten für mehr als 3.000 US-Bundesstaaten. Nun zu den Methoden!
Graph Gebäude
Interaktive Diagrammerstellung bedeutet, ein Diagramm mit sofortigen Ansichtsaktualisierungen zu erstellen oder umzustrukturieren. In JMP sind die Wechselwirkungen direkt auf der Oberfläche. Andere Implementierungen können weiterhin interaktiv sein, wenn Drop-Zones neben dem Diagramm angezeigt werden.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-w1Yng3aTE6cNO7Pg5DSI6NI35O7flBl5w928h446r494', 'w1Yng3aTE6cNO7Pg5DSI6NI35O7flBl5', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"928px","height":"446px"});
(In "Meine Videos" anzeigen)
Das Video zeigt einige Herausforderungen. Als die zweite Y-Variable "Rep Pct" hinzugefügt wurde, gab es mehr Y-Drop-Zonen als zuvor, sodass wir angeben konnten, wo sie in Bezug auf die vorhandene Y-Variable platziert werden soll. Die Drop-Zones Farbe und Größe sind künstlich, da sie nicht dieselbe natürliche Position haben wie die Variablen der X- und Y-Achse.
Diese Endtabelle ähnelt der in a Artikel der New York Times betitelt, "Die konservativsten Kreise sind die, die die meiste Regierungsunterstützung erhalten." Es gab einige Diskussion auf Twitter über die Regressionsgerade und andere Funktionen. Das hat mich dazu gebracht, die Daten selbst zu sammeln und zu untersuchen ( Büro für Wirtschaftsanalyse und Tony McGoverns Wahlergebnisse ). Als ich feststellte, wie viele Interaktivitätsmethoden ich während meiner Erkundung ausübte, dachte ich, dies würde einen geeigneten Demonstrationsdatensatz ergeben.
Auswahlverknüpfung
Wenn mehrere Ansichten dieselbe Datentabelle verwenden, bedeutet Auswahlverknüpfung, dass Elemente, die in einer Ansicht hervorgehoben sind, die entsprechenden Elemente in den anderen Ansichten hervorheben. In JMP ist die Auswahlverknüpfung immer aktiv, was bedeutet, dass sie auch bei Millionen von Zeilen schnell sein muss. Um dies zu erreichen, wird die Auswahl als Kernbestandteil jeder Datentabelle eingebunden.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-91Y3g3aTE6UQB4ZFOYAANeKz_24gCiwgw912h446r59', '91Y3g3aTE6UQB4ZFOYAANeKz_24gCiwg', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"912px","height":"446px"});
(In "Meine Videos" anzeigen)
Die größte Herausforderung besteht darin, dass Diagrammelemente keine Eins-zu-Eins-Korrespondenz miteinander haben, z. B. die Punkte auf Kreisebene und die Formen auf Bundesstaatsebene im Beispiel. Die übersichtliche Darstellung einer Teilauswahl für jeden Diagrammtyp ist eine offene Herausforderung. Für die Karte hebt JMP eine gesamte Statusform hervor, wenn eine der Grafschaften an einer anderen Stelle ausgewählt wird. Bei Grafikelementen, deren Größe nach Anzahl sortiert ist, wie z. B. Histogrammbalken, verwendet JMP eine teilweise Hervorhebung, um die teilweise Auswahl widerzuspiegeln.
Zeilenfilterung
Die Zeilenfilterung ist eine der häufigsten Arten der Datenvisualisierungsinteraktion. Die Idee ist, dass die Visualisierung nur eine Teilmenge der Zeilen der Datentabelle verwendet, basierend auf den Einschränkungen der Filter, die neben der Visualisierung angezeigt werden.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-5iZHg3aTE6SQv6VAfU_xNjFfMCuO01jbw856h406r54', '5iZHg3aTE6SQv6VAfU_xNjFfMCuO01jb', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"856px","height":"406px"});
(In "Meine Videos" anzeigen)
Es gibt eine Option namens "Skalensperre", die ich im Video verwendet habe, um die Achsen beim Filtern zu fixieren. Andernfalls würden sie für jede gefilterte Teilmenge angepasst.
Schwebedetails
Eine passive Art der Interaktion besteht darin, den Mauszeiger über ein grafisches Element zu halten und ein schwebendes Fenster mit mehr Details anzuzeigen. Manchmal werden diese als "Tooltips" bezeichnet, da sie ursprünglich für Symbolleistensymbole verwendet wurden. In einer Datenvisualisierung können durch Hover-Detaillierung sowohl genauere Werte für die Diagrammvariablen als auch zusätzliche zugehörige Variablen angezeigt werden.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-NoZHg3aTE6ufjR5lBO2jl20LGnTPiryRw944h332r996', 'NoZHg3aTE6ufjR5lBO2jl20LGnTPiryR', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"944px","height":"332px"});
(In "Meine Videos" anzeigen)
Beachten Sie im Beispiel, dass der County-Name in den Hover-Details für das Streudiagramm enthalten war, obwohl diese Variable nicht im Diagramm enthalten ist. Dies liegt daran, dass die Variable in der Datentabelle mit einem Attribut gekennzeichnet ist, das bewirkt, dass sie standardmäßig in allen Hover-Details angezeigt wird.
Model Tuning
Modelloptimierung bedeutet, dass sich die visuelle Darstellung ändert, wenn ein Modellparameter geändert wird. In diesem Beispiel ist das Modell ein glatter Spline, und der Modellparameter ist der Steifheitsparameter Lambda.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-lwZHg3aTE6Cxjm8c2z_c_96H3HNrYoBKw876h386r363', 'lwZHg3aTE6Cxjm8c2z_c_96H3HNrYoBK', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"876px","height":"386px"});
(In "Meine Videos" anzeigen)
Obwohl viele Modelle für ein derart interaktives Tuning zu langsam sind, sind Computer schnell genug, um mehr zu leisten, als wir oft bemerken. Dieses einfach aussehende Modell hat viel zu bieten. Es gibt vier separate Glätter und jedes hat ein 250-faches Bootstrap-Konfidenzintervall, sodass jedes Mal, wenn sich der Steifigkeitsparameter ändert, 1.000 Spline-Modelle angepasst werden.
Ästhetisches Mapping
Das Mappen von ästhetischen Attributen auf Diagrammelemente ist eine einfache, aber wichtige Interaktion. Bei ästhetischen Aspekten wie Farben und Linienstilen müssen Sie diese häufig sehen, um zu wissen, wie gut sie funktionieren.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-c0ZXg3aTE6a3ZbW4jgVWp0XEhClvYMmcw888h422r936', 'c0ZXg3aTE6a3ZbW4jgVWp0XEhClvYMmc', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"888px","height":"422px"});
(In "Meine Videos" anzeigen)
Einfache Attribute können mit einem Rechtsklick geändert werden, und komplexere Attribute wie die Verlaufsfarbenzuordnung erfordern einen Einstellungsdialog und weisen daher einen geringeren Grad an Interaktivität auf.
Spaltenumschaltung
Beim Spaltenwechsel ersetzen Sie eine oder mehrere Datenspalten durch eine andere Spalte aus einem Satz. Hier wird die Y-Variable einzeln durch Spalten im linken Bereich ersetzt.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-swZ3g3aTE6nqw8PbCMQysv4S0v_x9j8Iw856h386r488', 'swZ3g3aTE6nqw8PbCMQysv4S0v_x9j8I', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"856px","height":"386px"});
(In "Meine Videos" anzeigen)
Die Spaltenumschaltung kann eine gute Möglichkeit sein, einen neuen Datensatz schnell zu durchlaufen.
Volume Slicing
Volume-Slicing ist eine Möglichkeit, einen mehrdimensionalen Datenraum zu erkunden, indem ein Satz von zweidimensionalen Slices grafisch dargestellt wird. Das Profiler in JMP verwendet Slicing, um mehrdimensionale Modelle zu untersuchen. In diesem Beispiel wird der Repräsentanten-Pkt auf der Basis des Y anhand der drei Faktoren Persönliches Einkommen, Persönliche Übertragung und Abstimmungsrate modelliert, was zu einer vierdimensionalen Oberfläche führt. Jeder Frame zeigt einen Schnitt über ein X, während die anderen X festgehalten werden.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-4yZ3g3aTE6juUfpYEYjPJuyqCiE3P95ew876h378r96', '4yZ3g3aTE6juUfpYEYjPJuyqCiE3P95e', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"876px","height":"378px"});
(In "Meine Videos" anzeigen)
Persönliche Übertragung scheint wenig Wirkung zu haben (zumindest in diesem Segment handelt es sich meistens um eine flache Linie), aber wenn wir mit ihr interagieren und ihren festen Wert ändern, der von den anderen Frames verwendet wird, sehen wir eine Interaktion mit persönlichem Einkommen. Persönliches Einkommen hat eine lockere positive Steigung für hohe persönliche Überweisungen und eine starke negative Steigung für niedrige persönliche Überweisungswerte.
Achsenskalierung
Eine Skala definiert, wie Datenwerte auf Bildschirmkoordinaten abgebildet werden und wird selbst als Achse dargestellt. Die Achsen-Skalierungs-Interaktion ist die Fähigkeit, diese Zuordnung durch direktes Manipulieren der Achse zu ändern. Die Interaktionen umfassen Schwenken, Strecken und Zoomen.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-JhZ3g3aTE6fEz1j6iZo-YcS1fqY37RRLw756h406r424', 'JhZ3g3aTE6fEz1j6iZo-YcS1fqY37RRL', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"756px","height":"406px"});
(In "Meine Videos" anzeigen)
Bei der Achsenskalierung geht es nicht immer nur darum, Elemente an verschiedenen Stellen neu zu zeichnen. Beachten Sie, dass das Punktdiagramm auf der rechten Seite das Layout zum Ausweichen von Markierungen für die neuen Maßstäbe anpassen muss und die Achsen selbst manchmal Dinge wie Teilstrichintervalle neu berechnen müssen. Bei geografischen Visualisierungen ist es sogar nützlich, die Projektionen abhängig vom Maßstab zu wechseln.
LITHIUM.OoyalaPlayer.addVideo('https:\/\/player.ooyala.com\/static\/v4\/production\/', 'lia-vid-BxZ3g3aTE6g374JDRrFcRvP3b9lNPY_9w920h426r644', 'BxZ3g3aTE6g374JDRrFcRvP3b9lNPY_9', {"pcode":"ltbGkyOjMl3V3pZ3Trn6T2z1_rjF","playerBrandingId":"ODI0MmQ3NjNhYWVjODliZTgzY2ZkMDdi","width":"920px","height":"426px"});
(In "Meine Videos" anzeigen)
Für JMP verwendet die regionale Skala ein Albers gleiche Flächenprojektion, und die Weltskala verwendet a Kavrayskiy VII Kompromissprojektion.
Weitere Interaktionen?
Angesichts dieser neun Interaktionsmethoden für die Datenvisualisierung können wir weitere Fragen besser berücksichtigen:
- Welche anderen allgemeinen Interaktionsmethoden sind für die Datenvisualisierung hilfreich? Ich sage "allgemeine" Methoden, da ich mir vorstelle, dass die Anzahl der auf eine bestimmte Art von Grafik ausgerichteten Spezialinteraktionen unbegrenzt ist. Zum Beispiel bietet JMP die Möglichkeit, Histogramm-Bin-Größen, die ich hier nicht als allgemeine Methode angegeben habe, interaktiv zu ändern.
- Sollten einige dieser Methoden in mehrere Methoden aufgeteilt werden? Möglicherweise unterscheidet sich das Volume-Slicing bei der Datenexploration von der Modellexploration. Ich überlege, die Größe eines interaktiven Graphen als eine Art Achsenskalierung zu ändern, aber vielleicht lohnt es sich, eine eigene Kategorie zu haben.
- Sollten einige dieser Methoden als Sorten derselben Methode kombiniert werden? Vielleicht sind Zeilenfilterung und Spaltenumschaltung zwei Varianten einer größeren Teilmengeninteraktion.
- Gibt es bessere Namen für diese Methoden, entweder bereits existierende oder neue? Einige dieser Namen stammen aus der JMP-Terminologie, andere sind meine eigene Erfindung für diese Diskussion.
- Sollten unterschiedliche Niveaus jeder Methode erkannt werden? Zum Beispiel sollten wir zwischen dem Erstellen von Diagrammen mit oder ohne Live-Vorschau unterscheiden.
Ich hoffe auf Feedback zu diesen und anderen Fragen, entweder hier, bei JSM oder auf Twitter.