Was sind einige Alternativen zu einem Boxplot?


20

Ich arbeite an der Erstellung einer Website, auf der die Volkszählungsdaten für ein vom Benutzer ausgewähltes Polygon angezeigt werden und die Verteilung der verschiedenen Parameter grafisch dargestellt werden soll (ein Diagramm pro Parameter).

Die Daten haben normalerweise die folgenden Eigenschaften:

  1. Die Stichprobengröße ist in der Regel groß (etwa 10.000 Datenpunkte).
  2. Der Wertebereich ist in der Regel sehr groß (z. B. kann die Mindestbevölkerung weniger als 100 und die Höchstbevölkerung etwa 500.000 betragen).
  3. q1 liegt normalerweise in der Nähe des Minimums (etwa 200), während q2 und q3 innerhalb von 10.000 liegen
  4. Es sieht nicht nach einer Normalverteilung aus

Ich bin kein Statistiker und daher ist meine Beschreibung möglicherweise nicht genau klar.

Ich möchte diese Verteilung in einer Grafik darstellen, die von den Bürgern gesehen wird (der Laie, wenn Sie möchten).

Am liebsten hätte ich ein Histogramm verwendet, aber es ist aufgrund des großen Wertebereichs nicht möglich, weshalb das Herstellen von Behältern nicht wirklich einfach und unkompliziert ist.

Ausgehend von dem, was ich über Statistiken weiß, wird häufig ein Box-Plot verwendet, um diese Art von Daten anzuzeigen. Für einen Laien ist das Entschlüsseln des Box-Plots jedoch nicht einfach.

Welche Möglichkeiten habe ich, um diese Daten leicht verständlich darzustellen?


was genau zeigst du an Mir ist nicht klar, welche Art von Daten Ihr einziger Datenpunkt darstellt.
mpiktas

1
Wie wäre es mit einem Kernel-Dichte-Plot? statmethods.net/graphs/density.html
Roman Luštrik

@mpiktas: Meine Daten sind Volkszählungsdaten für Dörfer. Auf meiner Website kann der Benutzer ein Gebiet auf der Karte auswählen und dann alle Dörfer in diesem Gebiet finden. Die Volkszählungsdaten für ein Dorf bestehen aus verschiedenen Werten wie: männliche Bevölkerung, weibliche Bevölkerung, durchschnittliches Haushaltseinkommen usw. für dieses Dorf. Ich hoffe, die Datenverteilung für einen bestimmten Wert (z. B. Gesamtbevölkerung) für alle Dörfer in dem vom Benutzer ausgewählten Gebiet anzeigen zu können.
Devdatta Tengshe

Antworten:


13

Ein Boxplot ist nicht so kompliziert. Schließlich müssen Sie nur die drei Quartile und die Min- und Max- Werte berechnen, die den Bereich definieren. Eine Feinheit entsteht, wenn wir die Whisker zeichnen wollen, und verschiedene Methoden wurden vorgeschlagen. Beispielsweise würden in einem Tukey-Boxplot Werte außerhalb des 1,5-fachen des Interquartils des ersten oder dritten Quartils als Ausreißer betrachtet und als einfache Punkte angezeigt. Siehe auch Methoden zur Darstellung statistischer Informationen: The Box Plot für einen guten Überblick , von Kristin Potter. Die R - Software implementiert eine etwas andere Regel, aber der Quellcode ist verfügbar, wenn Sie ihn studieren möchten (siehe boxplot()und)boxplot.stats()funktionen). Es ist jedoch nicht sehr nützlich, wenn das Interesse besteht, Ausreißer aus einer sehr verzerrten Verteilung zu identifizieren (siehe jedoch Ein angepasster Boxplot für verzerrte Verteilungen von Hubert und Vandervieren, CSDA 2008 52 (12)).

In Bezug auf die Online-Visualisierung würde ich einen Blick auf Protovis werfen, eine pluginfreie js-Toolbox für interaktive Web-Displays. Die Beispielseite zeigt in wenigen Zeilen sehr anschaulich, was damit erreicht werden kann.


3
Ich arbeite in der biologischen Forschung. Ich kenne einige Kollegen (ich meine Leute mit einem Doktortitel), die Boxplots nicht wirklich verstehen. Ich würde sie nicht verwenden, um ein allgemeines Publikum anzusprechen.
Nico

1
@nico Das ist ein fairer Punkt. Dies ist jedoch kein Grund, keine effiziente grafische Zusammenfassung zu verwenden. Eine schematische Darstellung dessen, was ein Boxplot tatsächlich tut, könnte dem Leser helfen.
Chl

1
es kommt wirklich darauf an, was die Zielgruppe ist und was das Ziel der Website ist. Das Erklären von Boxplots würde definitiv helfen, aber dennoch haben einige Leute große Probleme mit dem Konzept der Verteilung.
nico

@nico Ja, ich stimme zu. Boxplot wird zwar in A Tour through the Visualization Zoo nicht erwähnt - aber dies sind große und komplexe Datensätze. Ich mag es einfach und es tut mir leid, dass es in den experimentellen Wissenschaften nicht viel verwendet wird. Das Überlagern von Rohdaten hilft dem Leser, die Verteilung zu visualisieren.
Chl

1
Ich kenne! Ich versuche immer, meine Kollegen in Boxplots "umzuwandeln", zumindest wenn es darum geht, Papiere zu schreiben, Präsentationen zu machen usw., aber manchmal ist es das auch!
Nico


7

Ich würde vorschlagen, dass Sie mit Histogrammen durchhalten. Sie sind viel umfassender verstanden als die Alternativen. Verwenden Sie eine logarithmische Skala, um den großen Wertebereich zu bewältigen. Hier ist ein Beispiel, das ich in ein paar Minuten in Stata erfunden habe: Histogramm mit Logarithmus auf der Werteachse
Ich gebe zu, dass die numerischen Beschriftungen auf der x-Achse nicht ganz einfach oder automatisch waren, aber während Sie eine Website erstellen, sind Ihre Programmierkenntnisse auf dem neuesten Stand Herausforderung!


Guter Punkt. Hier bieten sich Histogramme (oder Dichtediagramme mit Bandbreitenexperiment) an.
Suncoolsu

Sie haben vollkommen Recht, dass das Histogramm die am besten verstandene Art ist, eine Verteilung darzustellen. Ich werde versuchen, Histogramme mit beiden Achsen in logarithmischer Skala zu erstellen.
Devdatta Tengshe

2
Ich schlage nur vor, eine logarithmische Skala für die x-Achse zu verwenden. Ich denke nicht, dass eine logarithmische Skala für die Frequenzachse eine gute Idee wäre, da dann der schattierte Bereich jedes Balkens des Histogramms nicht proportional zur Anzahl der Beobachtungen wäre.
am

5

Hier ist ein Matlab-Funktion zum gleichzeitigen Zeichnen mehrerer Histogramme in 2D als Alternative zum Box-Plot. Siehe das Bild oben. Und hier ist noch einer

Der Dichtestreifen ist eine weitere Alternative zum Box-Plot. Es ist ein schattierter monochromer Streifen, dessen Dunkelheit an einem Punkt proportional zur Wahrscheinlichkeitsdichte der Menge an diesem Punkt ist. Dies ist eine R-Implementierung des Dichtestreifens


1
(+1) Hab das vergessen. Es könnte praktisch sein.
chl

1
Wir haben gerade eine ungated PDF-Version von " Unsicherheit mit Schattierung anzeigen" gefunden .
chl

@chl: dieser Link funktioniert nicht
kjetil b halvorsen

4

Wie wäre es mit Quantilen? Es ist dann nicht erforderlich, eine Grafik, sondern nur eine Tabelle darzustellen. Für die Dorfzählung denke ich, dass die Benutzer am meisten daran interessiert sein werden, wie viele Dörfer eine bestimmte Größe habenx%von allen Dörfern sind kleiner als die bestimmte Anzahl. Für Dezilex=0,10,20,...,100. Sie können diese Tabelle mit den Prozentsätzen auf einer x-Achse und den Dezilen auf der y-Achse grafisch darstellen.


3
Zitat eines Freundes: Wenn Sie etwas in einem Papier "verstecken" wollen, setzen Sie es lieber in den Text als in eine Figur. Wenn du sichergehen willst, dass niemand es liest, lege es in eine Tabelle! ;) Ich mache nur Spaß, aber ich habe eine Website mit interaktiven Karten, auf die die Benutzer klicken können usw. All das, um einen Tisch zu bekommen ... das wäre enttäuschend!
Nico

@nico, ja, aber manchmal sind Tabellen viel informativer als Grafiken. Ich bevorzuge zum Beispiel eine Tabelle anstelle einer schlechten Grafik. In diesem Fall kann die Tabelle immer noch grafisch dargestellt werden, und ich habe Quantile vorgeschlagen, da sie keine Probleme mit Ausreißern haben.
mpiktas

Das ist, was ich gerade tue (die Dezile in einem Diagramm anzeigen), aber nachdem wir es einigen unserer Zielgruppen gezeigt haben, erhielten wir Feedback, dass die Diagramme nicht einfach zu verstehen waren.
Devdatta Tengshe

2

Wenn Sie die allgemeine Bevölkerung ansprechen (dh eine nicht statistisch versierte Zielgruppe), sollten Sie sich eher auf die Aufmerksamkeit als auf die statistische Genauigkeit konzentrieren.

Vergessen Sie Boxplots, ganz zu schweigen von Geigenplots (ich persönlich finde sie sehr schwer zu lesen)! Würde man den durchschnittlichen Straßenmenschen fragen, was ein Quantil ist, würde man meistens ein Schweigen mit großen Augen bekommen ...

Sie sollten Barplots, Blasendiagramme und möglicherweise einige Kreisdiagramme (brrrr) verwenden. Vergessen Sie Fehlerbalken (obwohl ich SD gegebenenfalls irgendwo in den Text einfügen würde).

Verwenden Sie Farben, Formen, dicke Linien, 3D. Sie sollten jedes Diagramm einzigartig und sofort verständlich machen, auch ohne alle Legenden / Achsen usw. lesen zu müssen. Machen Sie einen intelligenten Gebrauch von Karten, indem Sie sie ausmalen.

Information ist schön ist eine sehr gute Ressource, um Ideen zu bekommen. Schauen Sie sich zum Beispiel diese Tabelle an: Koffein und Kalorien : Jeder kann es verstehen und es ist angenehm für das Auge.

Und natürlich schauen Sie sich Edward Tuftes Arbeit an.


Hinweis: Ich habe nicht vorgeschlagen, dass er Geigenzeichnungen für seine Anwendungen verwendet, sondern ein Histogramm mit logarithmisch angeordneten Behältern. Geigenzeichnungen war die Antwort auf die Frage im Titel (die sich von der Frage im Beitrag selbst ziemlich unterschied).
Dikran Beuteltier

3
Sie werden wahrscheinlich Many Eyes , dataviz , datavisualization.ch und Ideas2evidence mögen , um nur einige zu nennen.
Chl

2

Ich mag Geigenhandlungen lieber selbst, da dies eine Vorstellung von der Form der Verteilung gibt. Wenn es jedoch auf den großen Wertebereich ankommt, ist es möglicherweise am besten, das Protokoll der Daten und nicht die Rohwerte zu zeichnen. Dann müssen Sie die Boxgrößen für Histogramme usw. auswählen Erwähnen Sie keine Protokolle und markieren Sie die Achsen 10, 100, 1000, 10000, 100000, 1000000 usw.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.