Hinweis: Es werden jetzt 50 Rohdatenpunkte angehängt.
Ich möchte anzeigen, wie viel und wie viele Seiten ich im Laufe der Woche nach Tagen aufgeteilt und wie unten gezeigt absolviert habe:
Die Leute haben mir gesagt, dass sie die Grafiken nicht verstehen können, aber ich habe keine Ahnung, wie ich sie sonst anzeigen kann. Da würde ich im wesentlichen drei Dimensionen benötigen, ohne eine kumulative Darstellung vorzunehmen. Ich möchte die Verwendung zahlreicher Liniendiagramme vermeiden, da die Diagramme nach einigen Wochen unleserlich werden. Kann ich nichts tun?
Wie kann ich diese deutlicher darstellen?
Date Total Total pages
21/11/2014 2.4166 0
22/11/2014 0 0
23/11/2014 1.5833 4
24/11/2014 3.0166 13
25/11/2014 2.4999 6
26/11/2014 1.4833 3
27/11/2014 3.0499 6
28/11/2014 0 0
29/11/2014 2.4499 5
30/11/2014 2.8833 2
1/12/2014 0 0
2/12/2014 4.1166 8
3/12/2014 1.3333 5
4/12/2014 1.2499 3
5/12/2014 1.6666 8
6/12/2014 0 0
7/12/2014 2.4833 9
29/12/2014 0 0
30/12/2014 1.2332 1
31/12/2014 0.3333 0
1/01/2015 3.5666 2
2/01/2015 0.8166 0
3/01/2015 2.75 28
4/01/2015 0.4166 0
5/01/2015 1.2833 0
6/01/2015 0.3333 3
7/01/2015 0 0
8/01/2015 0 0
9/01/2015 2.35 2
10/01/2015 0.5666 0
11/01/2015 0 0
12/01/2015 1.6666 0
13/01/2015 2.2666 5
14/01/2015 2.5165 6
15/01/2015 2.0166 0
16/01/2015 2.9666 1
17/01/2015 0.8333 0
18/01/2015 0.6666 1
19/01/2015 1.45 0
20/01/2015 0.3166 0
21/01/2015 0 0
22/01/2015 0.2333 0
23/01/2015 0.85 2
24/01/2015 0 0
25/01/2015 0 0
26/01/2015 0.6666 4
27/01/2015 0.8333 1
28/01/2015 1.5498 5
29/01/2015 6.4159 9
30/01/2015 2.9166 0
data-visualization
gung - Wiedereinsetzung von Monica
quelle
quelle
Antworten:
Eine Möglichkeit, Daten auf Datums- / Kalenderbasis darzustellen, besteht in einer Matrixanzeige, die die Daten mit Farbe codiert. Die Matrix (oder Tabelle) ist so angeordnet, dass Zeilen Wochen und Spalten Tage darstellen. Sie können eine letzte Spalte für die wöchentliche Gesamtsumme hinzufügen, wenn dies gewünscht wird.
Dies kann in Excel mit bedingter Formatierung etwas einfach implementiert werden, wenn die Daten korrekt angeordnet sind. Insbesondere können Sie ein "Gitter" von Werten mit Formeln erstellen, die in Ihre ursprünglichen Daten schauen. Von dort aus können Sie die bedingte Formatierung verwenden, um das Ergebnis anzuzeigen.
So könnte das Ergebnis aussehen. Entschuldigung, ich habe das Datumsformat geändert. Die Formel in Zelle H1 ist:
"=IFERROR(VLOOKUP($G$1+$G6*7+H$5, $B$5:$C$16,2,FALSE), 0)"
. Es ist ein bisschen Mathe, um die Tage in die richtige Reihenfolge zu bringen. Hoffentlich ist es einfach.Wenn Sie wirklich den Umschlag verschieben möchten, können Sie ein Framework wie d3 und sein Kalender- Plugin verwenden, um diese Daten anzuzeigen. Das ist vielleicht mehr ein Unterfangen, als es sich lohnt.
Dieses Format ähnelt stark der Art und Weise, wie GitHub Benutzeraktivitäten / -beiträge im Zeitverlauf anzeigt. Hier ist ein Benutzer (nicht ich!).
quelle
Das herausragende Merkmal des Originals sind die wöchentlichen Summen. Die einzelnen Werte sind erst dann von Bedeutung, wenn Sie die Farben gelernt haben, und ich stelle mir vor, dass dies ein wichtiger Grund dafür ist, dass die Darstellung für neue Betrachter nicht funktioniert. Damit geht der Zeitaspekt der Tage verloren. Eine fortlaufende Reihe von Farben kann hilfreich sein (z. B. 7 Blautöne).
Normalerweise ist es mir nicht wichtig, jeden Artikel zu kennzeichnen - sind die genauen Werte von Bedeutung? Das Diagramm funktioniert nicht, wenn Sie es nicht ohne jeden beschrifteten Wert interpretieren können.
Auf zu meinem Versuch . Angesichts der offensichtlichen Bedeutung der wöchentlichen Summen habe ich die wöchentlichen kumulativen Summen aufgezeichnet. Es zeigt die wöchentlichen Summen und die Tage in zeitlicher Reihenfolge. Genaue Tageswerte sind weniger klar, Ausreißerwerte werden jedoch weiterhin hervorgehoben.
Für diese Art von kleinen Liniendiagrammen (die auf die Größe einer Sparkline reduziert werden könnten ) ist es hilfreich, eine Referenzlinie oder -fläche zu haben. Zur Veranschaulichung habe ich einen Zielbereich hinzugefügt. Wenn ein Ziel nicht geeignet ist, kann es sich um einen Referenzwert handeln, der in etwa dem Bereich der letzten drei Wochen entspricht, oder um einen festgelegten Referenzwert.
Ich habe rot verwendet, um anzuzeigen, welche Wochen für das schnelle Scannen unter dem Ziel lagen.
Mit viel mehr Wochen können Sie sie eher in einem Raster als in einer vertikalen Liste organisieren.
quelle
Wenn ich Sie richtig verstehe, ist der Grund, warum Sie die Liniendiagramme nicht verwenden möchten, dass Sie zu viele Wochen haben und die Diagramme unordentlich werden würden.
Wenn dies das Problem ist, können Sie die Zeitreihen in Komponenten unterteilen:
Tägliche Abwechslung
Wöchentliche Variation
Langfristiger Trend
Noch etwas.
William S. Cleveland zeigt ein schönes Beispiel dafür in einem seiner Bücher (ich bin nicht in meinem Büro und kann mich nicht erinnern, welches seiner Bücher das Beispiel hat, aber es sind entweder Visualisierungsdaten oder die Elemente der grafischen Daten ).
Sowohl R als auch SAS verfügen über Tools, um dies zu tun. Haben Sie Zugang zu einem von beiden?
quelle
Ich werde zuerst einige Einwände gegen Ihre ursprünglichen gestapelten oder geteilten Balkendiagramme formulieren.
ein. Die Farbcodierung erscheint völlig beliebig. Daher kann der Graph nicht untersucht werden, ohne wiederholt zwischen Legende und Graph zu wechseln.
b. Nullen sind implizit als unsichtbare Balkensegmente. Nullen sind Teil der Variation.
Aus diesen und anderen Gründen sind die Graphen schwer zu dekodieren.
Das heißt, die Grafik hat sich bewährt, wenn das Interesse hauptsächlich an der Untersuchung von Summenunterschieden von Woche zu Woche besteht. Viele Wochen konnten so viele Balken eingezeichnet werden. Der entsprechende Nachteil ist, dass es immer schwieriger wird, Variationen innerhalb von Wochen zu untersuchen.
Sichern: In jedem Problem gibt es drei Variablen.
Zeit studiert oder Seiten abgeschlossen.
Wochentag.
Wochennummer.
Wenn die Anzahl der Wochen zunimmt, wird jedes Diagramm detaillierter. Die Herausforderung besteht darin, dieses Detail unter Kontrolle zu halten.
Ich würde ein Fahrraddiagramm in Betracht ziehen (andere Namen wurden in der Literatur verwendet, die meisten beziehen sich jedoch auf die Verwendung, um saisonale Schwankungen zu untersuchen). Hier gibt es eine klare Einführung von Naomi Robbins. Zu ihren Beispielen gehören solche wie Ihre, bei denen das Interesse an Variationen innerhalb und zwischen den Wochen liegt.
quelle
Die Liniendiagramme wären wahrscheinlich leichter zu interpretieren, wenn Sie einen gleitenden Durchschnitt von sieben, vierzehn oder vielleicht 28 Tagen hätten. Das würde sie glätten und es Ihnen trotzdem ermöglichen, Trends zu erkennen.
Dies hat einige Ähnlichkeiten mit der Lösung von Peter Flom, ist jedoch etwas einfacher und sagt daher kein ganz so vollständiges Bild aus - aber es kann durchaus für Ihre Bedürfnisse ausreichen. Wenn Sie Ihre Daten in einer Kalkulationstabelle aufzeichnen, hat dies den Vorteil, dass eine solche Mittelwertbildung innerhalb der Kalkulationstabelle durch das Einrichten einiger Formeln leicht durchgeführt werden kann und das Diagramm automatisch aktualisiert wird, wenn Sie neue Daten eingeben.
Aktualisieren Sie, um Diagramme einzuschließen
Das Tabellendiagramm für die gleitenden 7-Tage-Durchschnittswerte ist unspektakulär, scheint aber seine Aufgabe gut zu erfüllen. Die täglichen Schwankungen werden geglättet, sodass Trends leichter zu erkennen sind (im Vergleich zum entsprechenden Tageschart, der so laut ist, dass er nicht nachvollziehbar ist). Einige Hauptmerkmale werden in dieser Handlung gut herausgearbeitet: Beispielsweise wurde Mitte Januar eine große Menge an Arbeit stündlich erledigt, was jedoch nicht mit einem proportionalen Anstieg der durchschnittlich pro Tag fertiggestellten Seiten einherging. Die Weihnachtspause ist sehr gut sichtbar und solange einzelne Datenpunkte klar eingezeichnet sind, ist sie nicht zu irreführend (wenn nur die Linie sichtbar wäre, wäre es unmöglich festzustellen, dass der flache Zeitraum auf Datenmangel zurückzuführen ist!). Trotzdem würde ich empfehlen , einschließlich≈ 1,5
Mit nur fünfzig Datenelementen schien es nicht sinnvoll zu sein, über einen längeren Zeitraum einen Mittelwert zu bilden, um längerfristige Trends zu erkennen. Ebenso vermute ich, dass Peter Floms exzellente Idee der saisonalen Zersetzung mit solch begrenzten Daten zu kämpfen hätte. Wenn Sie die Zerlegung in Ihrer Tabelle durchführen würden, wäre es noch wichtiger, den Umbruch als Nulldaten einzuschließen.
Um meine Formeln zu reproduzieren, fügen Sie dies so ein, dass sich das Datum in der Zelle befindet
A1
:quelle
Wie ich Ihre Frage verstehe, wäre es möglich, Stunden und Seiten getrennt anzuzeigen. Ich werde das zuerst tun. Danach zeige ich Gesamt und Seiten in einem Plot an. Ich vermute, dass die tatsächlichen Zahlen nicht das Wichtigste sind - es ist wichtiger, sich einen Überblick über die Wochen und Wochentage zu verschaffen, die produktiv waren und welche nicht. In diesem Fall schlage ich vor, dass Sie die natürliche zeitliche Struktur beibehalten, da Ihre Daten tatsächlich nur eine zeitliche Dimension haben. Wir können immer noch einen Weg finden, die Wochen einzugrenzen.
Ich habe den folgenden R-Code und das ggplot2-Paket verwendet, um diesen ersten Plot zu erstellen. Ihre Daten wurden in die Objektdaten im folgenden Code geladen. Das Diagramm ist ein gruppiertes Balkendiagramm, wobei die grauen Balken die wöchentlichen Seitensummen angeben.
Das ist eindeutig nicht perfekt. Die grauen Balken dominieren zu sehr, da sie im Vergleich zu Tagesbalken einen größeren Bereich für die gleiche Lesemenge haben. Wir könnten sie dünner machen, aber ich mag die Art und Weise, wie sie die Wochen einschränken. Sie zeigen recht gut an, welche Tage in derselben Woche liegen - etwas, das sonst nicht unbedingt verständlich wäre. Vor allem, weil wir keine Zählimpulse haben.
Im nächsten Plot habe ich die mittlere Seitenzahl (innerhalb einer Woche) als Höhe des grauen Balkens verwendet.
Dies stellt wahrscheinlich Daten besser dar. Beachten Sie jedoch, dass die Wochen 0 und 7 irreführend sind, da sie keine 7 Tage enthalten. Sie könnten dies leicht umgehen.
Wenn Sie darauf bestehen, Seiten und Zeit gleichzeitig anzuzeigen, können Sie ein Balkendiagramm hintereinander erstellen. Es könnte ein wenig verwirrend sein, da die beiden vertikalen Skalen nicht gleich sind. Auf der anderen Seite kann es hilfreich sein, die aufgewendete Zeit und die direkt auf diese Weise geleistete Arbeit zu vergleichen.
BEARBEITEN: Wenn Sie feststellen, dass die Farben wirklich nicht so oft benötigt werden und von xan inspiriert sind (siehe unten), können Sie die Darstellung auf so etwas vereinfachen. Ich habe Donnerstag markiert, um eine zusätzliche visuelle Anleitung zu geben. Sie können sich auch dafür aussprechen, für alle Balken dieselbe Farbe zu verwenden, um einige (willkürliche) Tage nicht zu überbetonen.
Abschließend können Sie auch versuchen, die Achsen anders zu skalieren, indem Sie Ihre Werte durch den Mittelwert dividieren. Dies würde 1 zu einem "normalen" Wert machen. Wir könnten eine Linie bei 1 einfügen, um diesen Punkt hervorzuheben - jetzt auf dem Back-to-Back-Plot. Dies trennt "gute" von "schlechten" Tagen in Bezug auf die durchschnittliche Arbeitsbelastung.
Auf diesem Diagramm können wir auch sicherstellen, dass eine Einheit auf beiden Achsen dem gleichen Abstand entspricht, wie sie jetzt vergleichbar sind.
Beachten Sie auch, dass ich die Tage in der ersten Version durcheinander gebracht habe. Ich habe den Code und die Handlungen korrigiert und werde jetzt die sieben Tage der Woche üben.
Der Code, der den letzten Plot erzeugt hat:
quelle
quelle
Die Grafik unten zeigt die kumulierten Stunden des Studiums und die Gesamtseiten innerhalb jeder Woche unter Verwendung von Linien anstelle von gestapelten Balken, was es hoffentlich einfacher macht, den Trend innerhalb jeder Woche zu sehen und zwischen den Wochen zu vergleichen. Ich habe die fehlenden Wochen mit Nullen gefüllt, aber Sie können diese ausschließen, wenn Sie möchten. Der
R
Code für die Datenverarbeitung und die Plotgenerierung wird unterhalb der Grafik angezeigt.Bei der Ausführung der folgenden Schritte habe ich zuerst die in der Frage angegebenen Daten in einen Datenrahmen mit dem Namen geladen
dat
.quelle
Eine weitere Option ist das Blasendiagramm, in dem Sie für eine Variable die vertikale Höhe und für die andere die Punktgröße festlegen können. Unten ist das Datum (Tag) horizontal, die untersuchten Stunden sind vertikal, die pro Tag abgedeckten Seiten haben eine Blasengröße und die Woche ist farbig.
quelle
Sie könnten in 3d zeichnen. Ich habe nicht überprüft, ob der Wochentag korrekt berechnet wurde, den besten Betrachtungswinkel gefunden usw., aber dies sollte Ihnen die Idee geben. Weitere Verzierungen sind ebenfalls möglich. Beispielsweise ist es möglicherweise besser, die Punkte mit einer Linie zu verbinden und die Gitterlinien so zu verschieben, dass sie jedem Montag entsprechen.
Tatsächlich wäre es sehr interessant zu versuchen, jede Gitternetzlinie von links nach rechts und von oben nach unten (wie in diesem Winkel gezeigt) demselben Wochentag zuzuordnen (z. B. Montag) und dann Boxplots an der unteren und hinteren rechten Wand anzubringen die Gitterlinien. Die Boxplots würden den Gesamtstunden und der Gesamtseite für jede Woche entsprechen. Ich bin mir ziemlich sicher, dass dies mit RGL möglich sein würde, aber einige Bastelarbeiten erfordern würden. Es kann sich lohnen. Geigen- oder Bohnenplots sind möglicherweise noch besser.
Die Daten (zur Eingabe in R):
Machen Sie die Handlung:
quelle
Folgende Heatmap mit Wochennummer (des Jahres), Wochentag und Facetten für Stunden und Seiten kann hilfreich sein:
Das Entfernen von 2 hohen Werten führt zu besseren Farbverläufen im Plot:
Das Befolgen des Balkendiagramms kann ebenfalls hilfreich sein.
Es zeigt deutlich einen Zeitraum von 2 Wochen, in dem keine Arbeit geleistet wurde.
Ein Plot mit Linien kann ebenfalls nützlich sein (Linien sind nicht überladen; die Punkte können auch entfernt werden, wobei nur zwei Linien beibehalten werden).
Sie vermitteln die Informationen klar und vereinfachen die Handlung zum leichteren Verständnis.
quelle