Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Hallo zusammen,
ich möchte ein bzw. mehrere Diagramme erstellen. In dem Diagramm sollen jeweils zwei Boxplots abgetragen sein, wobei der erste Boxplot die Daten zu Messzeitpunkt t1, der zweite Boxplot die Daten zu Messzeitpunkt t2 wiedergibt. Überdies sollen jeweils zu jedem Boxplot die einzelnen Datenpunkte abgetragen werden.
Das ganze soll in etwa so aussehen wie hier: https://statistik-dresden.de/wp-content ... plots2.png . Oder von mir aus auch wie hier: https://scriptsandstatistics.files.word ... 504&zoom=2
Einziger Unterschied zu den verlinkten Beispielen: Bei den verlinkten Beispielen werden zwei Gruppen miteinander verglichen, bei mir ist es so, dass zwei Messzeitpunkte miteinander verglichen werden sollen.
Wie die Ersteller der o.g. Beispiel habe ich es mit dem Paket ggplot2 versucht. Hier auch das Manual zum Paket ggplot2: https://cran.r-project.org/web/packages ... gplot2.pdf
Am liebsten wäre mir, wenn ich einen kleinen Codeschnipsel als Vorlage finde, den ich dann für meine Zwecke anpassen kann. Bei Google finde ich zahlreiche Codeschnipsel mit der Suche "boxplot ggplot2 jitter": https://www.google.com/search?q=boxplot ... 20&bih=579
Ich habe den ein oder anderen der o.g. Codeschnipsel ausprobiert, da kommen teilweise optisch schon sehr ansprechende Diagramme dabei raus . Dummerweise sind alle die Codeschnipsel die ich gefunden habe für Gruppenvergleiche, d.h. die Boxplots vergleichen mehrere Gruppen. Ich will aber keine Gruppenvergleiche machen, sondern Messwiederholungen (zweifache Messwiederholungen), d.h. meine beiden Boxplots sollen zwei Messzeitpuntke vergleichen.
Für "boxplot ggplot2 jitter repeated" habe ich nichts brauchbares gefunden: https://www.google.com/search?q=boxplot ... 20&bih=579 .
Mag sein, dass ich etwas übersehen oder falsch gesucht habe. Kennt jemand zufällig einen Codeschnipsel für meine Zwecke oder einen passenden Link? (Boxplot mit Jitter-Plot für zweifache Messwiederholung).
Ich freue mich über jeden Hinweis!
Besten Dank und Grüße
8ZRbP
ich möchte ein bzw. mehrere Diagramme erstellen. In dem Diagramm sollen jeweils zwei Boxplots abgetragen sein, wobei der erste Boxplot die Daten zu Messzeitpunkt t1, der zweite Boxplot die Daten zu Messzeitpunkt t2 wiedergibt. Überdies sollen jeweils zu jedem Boxplot die einzelnen Datenpunkte abgetragen werden.
Das ganze soll in etwa so aussehen wie hier: https://statistik-dresden.de/wp-content ... plots2.png . Oder von mir aus auch wie hier: https://scriptsandstatistics.files.word ... 504&zoom=2
Einziger Unterschied zu den verlinkten Beispielen: Bei den verlinkten Beispielen werden zwei Gruppen miteinander verglichen, bei mir ist es so, dass zwei Messzeitpunkte miteinander verglichen werden sollen.
Wie die Ersteller der o.g. Beispiel habe ich es mit dem Paket ggplot2 versucht. Hier auch das Manual zum Paket ggplot2: https://cran.r-project.org/web/packages ... gplot2.pdf
Am liebsten wäre mir, wenn ich einen kleinen Codeschnipsel als Vorlage finde, den ich dann für meine Zwecke anpassen kann. Bei Google finde ich zahlreiche Codeschnipsel mit der Suche "boxplot ggplot2 jitter": https://www.google.com/search?q=boxplot ... 20&bih=579
Ich habe den ein oder anderen der o.g. Codeschnipsel ausprobiert, da kommen teilweise optisch schon sehr ansprechende Diagramme dabei raus . Dummerweise sind alle die Codeschnipsel die ich gefunden habe für Gruppenvergleiche, d.h. die Boxplots vergleichen mehrere Gruppen. Ich will aber keine Gruppenvergleiche machen, sondern Messwiederholungen (zweifache Messwiederholungen), d.h. meine beiden Boxplots sollen zwei Messzeitpuntke vergleichen.
Für "boxplot ggplot2 jitter repeated" habe ich nichts brauchbares gefunden: https://www.google.com/search?q=boxplot ... 20&bih=579 .
Mag sein, dass ich etwas übersehen oder falsch gesucht habe. Kennt jemand zufällig einen Codeschnipsel für meine Zwecke oder einen passenden Link? (Boxplot mit Jitter-Plot für zweifache Messwiederholung).
Ich freue mich über jeden Hinweis!
Besten Dank und Grüße
8ZRbP
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Hallo nochmal,
mittlerweile bin ich so vorgegangen: Ich habe den folgenden Code verwendet (der u.s. Code lässt sich nach Installation von ggplot2 auf jedem PC ausführen, ein zusätzliches DataSet ist nicht erforderlich):
Der o.g. Code ist jedoch Gruppenvergleiche vorgesehen, ich will ja Messwiederholungen vergleichen. Um dieses Problem zu umgehen, habe ich halt meinen Datensatz umstrukturiert, von der breiten in die lange Form (d.h. vom wide format ins long format), d.h. die Messwiederholungen sind dann zeilenweise abgetragen, nicht mehr spaltenweise wie zuvor.
Es kommt dann ein Diagramm ähnlich wie dieses hier raus (nur, dass es bei mir halt zwei Boxplots sind anstelle vier): https://www.tutorialgateway.org/wp-cont ... tter-7.png
Diese Lösung ist für mich okay (auch wenn ich nach wie vor für Lösungsvorschläge offen bin, die kein Umstrukturieren des Datensatz von der breiten in die lange Form erfordern). Dennoch würde ich an dem Diagramme gerne noch ein paar Sachen verbessern, wäre froh, hier noch den ein oder anderen Hinweis zu erhalten:
Must-have:
- Die folgenden Datenpunkte im Boxplot sollen mit den entsprechenden Werten beschriftet sein: 1., 2., 3. und viertes Quartil.
Nice-to-have:
- Die Whisker sollen außen, wie üblich, mit einem kleinen "Querbalken" als "Endstrich" beendet werden und nicht einfach aufhören
- Die y-Achse soll im Koordinatenursprung ebenfalls einen Strich haben der eben mit "0" beschriftet ist.
Was mir an dem Diagramm überdies völlig unklar ist, das würde ich gerne noch aufklären:
- Was bedeuten die schwarzen Datenpunkte? Ausreißer oder Extremwerte können es nicht sein, da es jeweils im gleichen Boxplot auch farbige Punkte gibt, die genauso weit oder noch weiter vom Median entfernt sind ie die schwarzen Datenpunkte.
Über den ein oder anderen Hinweis würde ich mich freuen!
Besten Dank und Grüße
8ZRbP
mittlerweile bin ich so vorgegangen: Ich habe den folgenden Code verwendet (der u.s. Code lässt sich nach Installation von ggplot2 auf jedem PC ausführen, ein zusätzliches DataSet ist nicht erforderlich):
Code: Alles auswählen
# Add Boxplot to R ggplot Jitter
# Importing the ggplot2 library
library(ggplot2)
# Creating basic Jitter
ggplot(ChickWeight, aes(x = Diet, y = weight)) +
geom_boxplot() +
geom_jitter(position = position_jitter(0.5), aes(colour = Diet))
Es kommt dann ein Diagramm ähnlich wie dieses hier raus (nur, dass es bei mir halt zwei Boxplots sind anstelle vier): https://www.tutorialgateway.org/wp-cont ... tter-7.png
Diese Lösung ist für mich okay (auch wenn ich nach wie vor für Lösungsvorschläge offen bin, die kein Umstrukturieren des Datensatz von der breiten in die lange Form erfordern). Dennoch würde ich an dem Diagramme gerne noch ein paar Sachen verbessern, wäre froh, hier noch den ein oder anderen Hinweis zu erhalten:
Must-have:
- Die folgenden Datenpunkte im Boxplot sollen mit den entsprechenden Werten beschriftet sein: 1., 2., 3. und viertes Quartil.
Nice-to-have:
- Die Whisker sollen außen, wie üblich, mit einem kleinen "Querbalken" als "Endstrich" beendet werden und nicht einfach aufhören
- Die y-Achse soll im Koordinatenursprung ebenfalls einen Strich haben der eben mit "0" beschriftet ist.
Was mir an dem Diagramm überdies völlig unklar ist, das würde ich gerne noch aufklären:
- Was bedeuten die schwarzen Datenpunkte? Ausreißer oder Extremwerte können es nicht sein, da es jeweils im gleichen Boxplot auch farbige Punkte gibt, die genauso weit oder noch weiter vom Median entfernt sind ie die schwarzen Datenpunkte.
Über den ein oder anderen Hinweis würde ich mich freuen!
Besten Dank und Grüße
8ZRbP
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
"mittlerweile" nach einer "Weile" von 80 Minuten.
Das ist ggplot2 101. ggplot2 will Daten im langen Format.Um dieses Problem zu umgehen, habe ich halt meinen Datensatz umstrukturiert, von der breiten in die lange Form (d.h. vom wide format ins long format)
Sag niemals nie. Aber ggplot2 will Daten im langen Format.(auch wenn ich nach wie vor für Lösungsvorschläge offen bin, die kein Umstrukturieren des Datensatz von der breiten in die lange Form erfordern)
Ob Messwiederholungen oder Gruppen, das hat nichts mit der Entscheidung zwischen langem und weitem Format zu tun. Das sind zwei ganz unterschiedliche Kategorien.Der o.g. Code ist jedoch Gruppenvergleiche vorgesehen, ich will ja Messwiederholungen vergleichen. Um dieses Problem zu umgehen, habe ich halt meinen Datensatz umstrukturiert,
Sowohl Boxplots als auch Punktwolken sind unterdessen überhaupt nicht gut für verbundene Beobachtungen geeignet, weil man ja eben gerade nicht sieht, welcher Punkt rechts zu welchem Punkt links gehört. Was man bei Punktwolken noch mit verbindenden Linien reparieren kann, lässt sich beim Boxplot nicht korrigieren. Du solltest nochmal überlegen, ob ein Boxplot für Deine Daten die richtige Darstellungsform ist.
Vor dem Must-have -wie gesagt- prüfen, ob Boxplots wirklich angemessen sind bei Deiner Messwiederholungsanalyse. Ansonsten ist das total unüblich, weil ein wissenschaftliches Publikum das i. d. R. weiß und Boxplots für ein nicht-wissenschaftliches Publikum eh nicht taugen. Natürlich kannst Du Dir da selbst was basteln. Da zu schau Dir geom_text und ggf. auch geom_label an.Must-have:
- Die folgenden Datenpunkte im Boxplot sollen mit den entsprechenden Werten beschriftet sein: 1., 2., 3. und viertes Quartil.
Weites Format, Querbalken als Endstrich - hast Du mal überlegt, ob Du base graphics verwenden möchtest? Sonst halt https://stackoverflow.com/questions/129 ... on-boxplotNice-to-have:
- Die Whisker sollen außen, wie üblich, mit einem kleinen "Querbalken" als "Endstrich" beendet werden und nicht einfach aufhören
- Die y-Achse soll im Koordinatenursprung ebenfalls einen Strich haben der eben mit "0" beschriftet ist.
Komische Gewichtung, die Du da an den Tag legst: Dass Du Deine eigene Grafik verstehst wäre m. E. "must have" und nicht "würde gerne noch"...Was mir an dem Diagramm überdies völlig unklar ist, das würde ich gerne noch aufklären:
Das können nicht nur Ausreißer sein, das sind Ausreißer. Das sind die Ausreißer, die mit dem Aufruf von geom_boxplot in schwarz gezeichnet wurden. Danach hast Du dieselben Puntke nochmal in bunt gemalt.- Was bedeuten die schwarzen Datenpunkte? Ausreißer oder Extremwerte können es nicht sein, da es jeweils im gleichen Boxplot auch farbige Punkte gibt, die genauso weit oder noch weiter vom Median entfernt sind ie die schwarzen Datenpunkte.
Noch weiter ? Oh Mann, da hast Du aber ein ganz dickes Problem an der Backe. Das heißt, dass Du Datenpunkte geplottet hast, die für den Boxplot gar nicht verwendet wurden. Wahrscheinlich ist Dein ggplot2 kaputt, oder R ist kaputt. Heftig, heftig. Oder doch ein Fehler bei Dir? Publizieren solltest Du so einen Plot besser nicht. Einmal kann es vorkommen, dass ein bunter Punkt zufällig genau auf dem schwarzen Punkt zu liegen kommt, aber mehrere Punkt in einem Plot? Vielleicht hast Du ja Jitter nicht nur in der width sondern auch in der height Richtung? Vielleicht hast Du auch das Diagramm nicht genau genug angeschaut? Wie geschrieben: Verstehen des eigenen Plots = "must have".farbige Punkte gibt, die [...]noch weiter vom Median entfernt sind wie die schwarzen Datenpunkte
HTH,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Den ersten Beitrag hatte ich vorgeschrieben, jedoch erst abgeschickt nachdem ich noch einige Stunden Versuche in R durchgeführt habe.
Danke, dann wäre das schon mal geklärt.Das ist ggplot2 101. ggplot2 will Daten im langen Format.Um dieses Problem zu umgehen, habe ich halt meinen Datensatz umstrukturiert, von der breiten in die lange Form (d.h. vom wide format ins long format)
Danke für diesen sehr wichtigen Einwand. Das die einzelnen Punkt nicht miteinander verbunden sind, sehe ich nicht als Malus an. Weil man die Punktewolken ja ohnehin als ganzes betrachtet und eine allgemeine Tendenz kann man m.E. schon aus dem visuellen Vergleich zweier Punktewolken erkennen. Dasselbe gilt für Boxplots.Sowohl Boxplots als auch Punktwolken sind unterdessen überhaupt nicht gut für verbundene Beobachtungen geeignet, weil man ja eben gerade nicht sieht, welcher Punkt rechts zu welchem Punkt links gehört. Was man bei Punktwolken noch mit verbindenden Linien reparieren kann, lässt sich beim Boxplot nicht korrigieren. Du solltest nochmal überlegen, ob ein Boxplot für Deine Daten die richtige Darstellungsform ist.
Wenn es nach mir geht, würde ich auch Diagramme verzichteten. Jedoch bin ich dazu "verdonnert" worden, Diagramme zu erstellen. Zuerst dachte ich an Liniendiagramme. Wenn man auf der y-Achse die ganze Skala abbildet wirkt die Veränderung aber seht klein. Zwar kann man die Veränderung größer wirken lassen, indem man die Skala auf der y-Achse an den Enden entsprechend kürzt, das wäre dann aber manipulativ. Balkendiagramme möcht ich für Mittelwerte hier auch nicht verwenden.
Ich finde die Boxplots mit Jitter trotz Deiner zutreffenden Einwände grundsätzlich immer noch geeignet. Was würdest Du denn für eine Darstellung empfehlen um Längsschnitt darzustellen, wenn es keine Liniendiagramme sein sollen? Gerne lasse ich mich belehren, habe durch die Beschäftigung mit ggplot erstmals von violine plots erfahren, das ist ja auch eine tolle Darstellungsform (für den vorliegenden Zweck möchte ich sie aber nicht verwenden).
Vor dem Must-have -wie gesagt- prüfen, ob Boxplots wirklich angemessen sind bei Deiner Messwiederholungsanalyse. Ansonsten ist das total unüblich, weil ein wissenschaftliches Publikum das i. d. R. weiß und Boxplots für ein nicht-wissenschaftliches Publikum eh nicht taugen. Natürlich kannst Du Dir da selbst was basteln. Da zu schau Dir geom_text und ggf. auch geom_label an.
Die Diagramme sind für ein nichtwissenschaftliches Publikum. Der Einwand, dass Boxplots für Laien zu kompliziert sein könntne ist zutreffend. Andererseits kann man Boxplots dem Laien erklären. Aus den o.g. Gründen halte ich Boxplots mit Jitterplots immer noch für die beste Darstellungsform (außer, Du präsentierst mir jetzt eine völlig neue Darstellungsform, die ich bisher noch nicht kenne).
Danke, ich schaue mir das an.Weites Format, Querbalken als Endstrich - hast Du mal überlegt, ob Du base graphics verwenden möchtest? Sonst halt https://stackoverflow.com/questions/129 ... on-boxplot
Die Zielgruppe des Diagramms sind wie gesagt keine Wissenschaftler. Die Beantwortung von Fragen die mir diese Zielgruppe garantiert nicht stellen wird, ist mir zwar auch wichtig, sonst würde ich sie nicht stellen, noch wichtiger ist es aber, dass ich in kürze vorzeigbare Diagramme vorweisen kann.Komische Gewichtung, die Du da an den Tag legst: Dass Du Deine eigene Grafik verstehst wäre m. E. "must have" und nicht "würde gerne noch"...
Das können nicht nur Ausreißer sein, das sind Ausreißer. Das sind die Ausreißer, die mit dem Aufruf von geom_boxplot in schwarz gezeichnet wurden. Danach hast Du dieselben Puntke nochmal in bunt gemalt.
Noch weiter ? Oh Mann, da hast Du aber ein ganz dickes Problem an der Backe. Das heißt, dass Du Datenpunkte geplottet hast, die für den Boxplot gar nicht verwendet wurden. Wahrscheinlich ist Dein ggplot2 kaputt, oder R ist kaputt. Heftig, heftig. Oder doch ein Fehler bei Dir? Publizieren solltest Du so einen Plot besser nicht. Einmal kann es vorkommen, dass ein bunter Punkt zufällig genau auf dem schwarzen Punkt zu liegen kommt, aber mehrere Punkt in einem Plot? Vielleicht hast Du ja Jitter nicht nur in der width sondern auch in der height Richtung? Vielleicht hast Du auch das Diagramm nicht genau genug angeschaut? Wie geschrieben: Verstehen des eigenen Plots = "must have".farbige Punkte gibt, die [...]noch weiter vom Median entfernt sind wie die schwarzen Datenpunkte
Ansonsten bitte ich zu entschuldigen, dass ich ggplot2 nach den ersten Versuchen noch nicht virtuos beherrsche!
Besten Dank für alle Hinweise und Grüße
8ZRbP
Zuletzt geändert von 8ZRbP am Di Mär 05, 2019 8:15 pm, insgesamt 3-mal geändert.
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Den ersten Beitrag hatte ich vorgeschrieben, jedoch erst abgeschickt nachdem ich noch einige Stunden Versuche in ggp2 durchgeführt habe.
Danke, dann wäre das schon mal geklärt.Das ist ggplot2 101. ggplot2 will Daten im langen Format.Um dieses Problem zu umgehen, habe ich halt meinen Datensatz umstrukturiert, von der breiten in die lange Form (d.h. vom wide format ins long format)
Danke für diesen sehr wichtigen Einwand. Das die einzelnen Punkt nicht miteinander verbunden sind, sehe ich nicht als Malus an. Weil man die Punktewolken ja ohnehin als ganzes betrachtet und eine allgemeine Tendenz kann man m.E. schon aus dem visuellen Vergleich zweier Punktewolken erkennen. Dasselbe gilt für Boxplots.Sowohl Boxplots als auch Punktwolken sind unterdessen überhaupt nicht gut für verbundene Beobachtungen geeignet, weil man ja eben gerade nicht sieht, welcher Punkt rechts zu welchem Punkt links gehört. Was man bei Punktwolken noch mit verbindenden Linien reparieren kann, lässt sich beim Boxplot nicht korrigieren. Du solltest nochmal überlegen, ob ein Boxplot für Deine Daten die richtige Darstellungsform ist.
Wenn es nach mir ginge, würde ich für den vorliegenden Zweck auf Diagramme vollständig verzichteten. Dummerweise bin ich dazu verdonnert worden, Diagramme zu erstellen. Zuerst dachte ich an Liniendiagramme. Wenn man auf der y-Achse die ganze Skala abbildet wirkt die Veränderung aber sehr klein. Zwar kann man die Veränderung größer wirken lassen, indem man die Skala auf der y-Achse an den Enden entsprechend kürzt, das wäre dann aber manipulativ. Balkendiagramme möcht ich für Mittelwerte hier auch nicht verwenden.
Ich finde die Boxplots mit Jitter trotz Deiner zutreffenden Einwände grundsätzlich immer noch geeignet. Was würdest Du denn für eine Darstellung empfehlen um Längsschnitt darzustellen, wenn es keine Liniendiagramme sein sollen? Gerne lasse ich mich belehren, habe durch die Beschäftigung mit ggplot erstmals von violine plots erfahren, das ist ja auch eine tolle Darstellungsform (für den vorliegenden Zweck möchte ich sie aber nicht verwenden).
Vor dem Must-have -wie gesagt- prüfen, ob Boxplots wirklich angemessen sind bei Deiner Messwiederholungsanalyse. Ansonsten ist das total unüblich, weil ein wissenschaftliches Publikum das i. d. R. weiß und Boxplots für ein nicht-wissenschaftliches Publikum eh nicht taugen. Natürlich kannst Du Dir da selbst was basteln. Da zu schau Dir geom_text und ggf. auch geom_label an.
Die Diagramme sind für ein nichtwissenschaftliches Publikum. Der Einwand, dass Boxplots für Laien zu kompliziert sein könntne ist zutreffend. Andererseits kann man Boxplots dem Laien erklären. Aus den o.g. Gründen halte ich Boxplots mit Jitterplots immer noch für die beste Darstellungsform (außer, Du präsentierst mir jetzt eine völlig neue Darstellungsform, die ich bisher noch nicht kenne).
Danke, ich schaue mir das an.Weites Format, Querbalken als Endstrich - hast Du mal überlegt, ob Du base graphics verwenden möchtest? Sonst halt https://stackoverflow.com/questions/129 ... on-boxplot
Die Zielgruppe des Diagramms sind wie gesagt keine Wissenschaftler. Die Beantwortung von Fragen die mir diese Zielgruppe garantiert nicht stellen wird, ist mir zwar auch wichtig, sonst würde ich sie nicht stellen, noch wichtiger ist es aber, dass ich in Kürze vorzeigbare Diagramme vorweisen kann .Komische Gewichtung, die Du da an den Tag legst: Dass Du Deine eigene Grafik verstehst wäre m. E. "must have" und nicht "würde gerne noch"...
Das können nicht nur Ausreißer sein, das sind Ausreißer. Das sind die Ausreißer, die mit dem Aufruf von geom_boxplot in schwarz gezeichnet wurden. Danach hast Du dieselben Puntke nochmal in bunt gemalt.
Noch weiter ? Oh Mann, da hast Du aber ein ganz dickes Problem an der Backe. Das heißt, dass Du Datenpunkte geplottet hast, die für den Boxplot gar nicht verwendet wurden. Wahrscheinlich ist Dein ggplot2 kaputt, oder R ist kaputt. Heftig, heftig. Oder doch ein Fehler bei Dir? Publizieren solltest Du so einen Plot besser nicht. Einmal kann es vorkommen, dass ein bunter Punkt zufällig genau auf dem schwarzen Punkt zu liegen kommt, aber mehrere Punkt in einem Plot? Vielleicht hast Du ja Jitter nicht nur in der width sondern auch in der height Richtung? Vielleicht hast Du auch das Diagramm nicht genau genug angeschaut? Wie geschrieben: Verstehen des eigenen Plots = "must have".farbige Punkte gibt, die [...]noch weiter vom Median entfernt sind wie die schwarzen Datenpunkte
Ansonsten bitte ich zu entschuldigen, dass ich ggplot2 nach den ersten Versuchen noch nicht virtuos beherrsche!
Besten Dank für alle Hinweise und Grüße
8ZRbP
[/quote]
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Habe mir jetzt noch mal beide Plots "einzeln" angesehen. Die Frage nach den "schwarzen Punkten" hat sich damit geklärt, besten Dank für Deine Anregung.bigben hat geschrieben: ↑Di Mär 05, 2019 8:15 amDas können nicht nur Ausreißer sein, das sind Ausreißer. Das sind die Ausreißer, die mit dem Aufruf von geom_boxplot in schwarz gezeichnet wurden. Danach hast Du dieselben Puntke nochmal in bunt gemalt.- Was bedeuten die schwarzen Datenpunkte? Ausreißer oder Extremwerte können es nicht sein, da es jeweils im gleichen Boxplot auch farbige Punkte gibt, die genauso weit oder noch weiter vom Median entfernt sind ie die schwarzen Datenpunkte.
Noch weiter ? Oh Mann, da hast Du aber ein ganz dickes Problem an der Backe. Das heißt, dass Du Datenpunkte geplottet hast, die für den Boxplot gar nicht verwendet wurden. Wahrscheinlich ist Dein ggplot2 kaputt, oder R ist kaputt. Heftig, heftig. Oder doch ein Fehler bei Dir? Publizieren solltest Du so einen Plot besser nicht. Einmal kann es vorkommen, dass ein bunter Punkt zufällig genau auf dem schwarzen Punkt zu liegen kommt, aber mehrere Punkt in einem Plot? Vielleicht hast Du ja Jitter nicht nur in der width sondern auch in der height Richtung? Vielleicht hast Du auch das Diagramm nicht genau genug angeschaut? Wie geschrieben: Verstehen des eigenen Plots = "must have".farbige Punkte gibt, die [...]noch weiter vom Median entfernt sind wie die schwarzen Datenpunkte
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Hallo,
nach viel Recherchieren und Ausprobieren sieht das Diagramm jetzt zu 90 % so aus, wie ich es mir wünsche (bis auf zwei Kleinigkeiten, ich gehe u.s. noch darauf ein). "Whisker-Endstriche" habe ich auch. Die Beschriftung von Datenpunkten hätte auch funktioniert, mittlerweile möchte ich darauf jedoch verzichten.
Hier der Code:
Der Chart der bei Ausführung o.s. Codes herauskommt ist im ersten u.s. Datei-Upload zu sehen.
Was ich bisher noch nicht umsetzen konnte sind diese beiden Sachen:
1. Ich möchte den Abstand zwischen den beiden Boxplots (und somit auch zwischen den Punktewolken) etwas vergrößern (die x-Achse soll aber grundsätzlich gleich bleiben)
2. Die Beschriftung der y-Achse soll nicht links neben dem Diagramm stehen, sodern direkt "über" der y-Achse (so wie im zweiten Datei-Upload beispielhaft annähernd an einem Excel-Diagramm dargestellt).
Hier noch den ein oder anderen Hinweis zu bekommen, würde mich freuen. Jeder noch so kleine Hinweis könnte mir helfen.
Besten Dank und Grüße,
8ZRbP
nach viel Recherchieren und Ausprobieren sieht das Diagramm jetzt zu 90 % so aus, wie ich es mir wünsche (bis auf zwei Kleinigkeiten, ich gehe u.s. noch darauf ein). "Whisker-Endstriche" habe ich auch. Die Beschriftung von Datenpunkten hätte auch funktioniert, mittlerweile möchte ich darauf jedoch verzichten.
Hier der Code:
Code: Alles auswählen
library(ggplot2)
ggplot(importiert, aes(x = Messzeitpunkt, y = Sprachkompetenz), ) +
coord_cartesian(xlim = c(0.5,2.5), ylim = c(0,10)) +
geom_boxplot( ) +
stat_boxplot(geom = "errorbar", width = 0.5) +
geom_jitter( position = position_jitter(0.5), aes(colour = Messzeitpunkt), show.legend=FALSE ) +
theme(axis.title.y = element_text(angle=0))
Was ich bisher noch nicht umsetzen konnte sind diese beiden Sachen:
1. Ich möchte den Abstand zwischen den beiden Boxplots (und somit auch zwischen den Punktewolken) etwas vergrößern (die x-Achse soll aber grundsätzlich gleich bleiben)
2. Die Beschriftung der y-Achse soll nicht links neben dem Diagramm stehen, sodern direkt "über" der y-Achse (so wie im zweiten Datei-Upload beispielhaft annähernd an einem Excel-Diagramm dargestellt).
Hier noch den ein oder anderen Hinweis zu bekommen, würde mich freuen. Jeder noch so kleine Hinweis könnte mir helfen.
Besten Dank und Grüße,
8ZRbP
- Dateianhänge
-
- testdiagram ggt2.png (4.35 KiB) 5241 mal betrachtet
-
- yachse beschriftung beipsiel.png (2.54 KiB) 5241 mal betrachtet
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Ich würde die boxen und das jitter schmäler machen.1. Ich möchte den Abstand zwischen den beiden Boxplots (und somit auch zwischen den Punktewolken) etwas vergrößern (die x-Achse soll aber grundsätzlich gleich bleiben)
So hier?2. Die Beschriftung der y-Achse soll nicht links neben dem Diagramm stehen, sodern direkt "über" der y-Achse (so wie im zweiten Datei-Upload beispielhaft annähernd an einem Excel-Diagramm dargestellt).
Code: Alles auswählen
require(ggplot2)
ggplot() +
labs(y = 'y-axis') +
theme(axis.title.y = element_text(angle = 0,
margin = margin(t = 0, r = -20, b = 0, l = 0)))
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Danke für den Hinweis, das habe ich so gemacht.
So hier?2. Die Beschriftung der y-Achse soll nicht links neben dem Diagramm stehen, sodern direkt "über" der y-Achse (so wie im zweiten Datei-Upload beispielhaft annähernd an einem Excel-Diagramm dargestellt).
Code: Alles auswählen
require(ggplot2)
ggplot() +
labs(y = 'y-axis') +
theme(axis.title.y = element_text(angle = 0,
margin = margin(t = 0, r = -20, b = 0, l = 0)))
Besten Dank für den Codeschnipsel, das hat funktioniert.
Eine Nebenwirkung ist allerdings aufgetreten. Aus unerfindlichen Gründen ist das Diagramm bzw. die y-Achse plötzlich in die Länge gestreckt. Wie könnte ich die y-Achse bzw. das ganze Diagramm wieder etwas "stauchen" (also die Höhe verringern). Habe es mit "height" ausprobiert, das hatte aber keine Wirkung. Aktuell verwende ich den u.s. Code und es kommt dabei das u.s. Bild heraus. Wäre schln, wenn mir jemand noch einen Hinweis geben könnte, wie ich die Höhe des Diagramms ändere bzw. die y-Achse wieder etwas mehr stauche.
Code: Alles auswählen
library(ggplot2)
ggplot(importiert, aes(x = Messzeitpunkt, y = Sprachkompetenz) ) +
coord_cartesian(xlim = c(0.5,2.5), ylim = c(0,10)) +
geom_boxplot( width =0.5 ) +
stat_boxplot(geom = "errorbar", width = 0.5) +
geom_jitter( position = position_jitter(0.3), aes(colour = Messzeitpunkt),
show.legend=FALSE) +
labs(y = 'Sprachkompetenz') +
theme(axis.title.y = element_text(angle = 0,
margin = margin(t = 0, r = 0, b =
0, l = 10)))
- Dateianhänge
-
- Rplot02.png (5.2 KiB) 5194 mal betrachtet
Re: Boxplot mit einzelnen Datenpunkten / Jitterplot bei Messwiederholung
Danke für den Hinweis, das habe ich so gemacht. Hat bestens funktioniert.
So hier?2. Die Beschriftung der y-Achse soll nicht links neben dem Diagramm stehen, sodern direkt "über" der y-Achse (so wie im zweiten Datei-Upload beispielhaft annähernd an einem Excel-Diagramm dargestellt).Code: Alles auswählen
require(ggplot2) ggplot() + labs(y = 'y-axis') + theme(axis.title.y = element_text(angle = 0, margin = margin(t = 0, r = -20, b = 0, l = 0)))
Besten Dank für den Codeschnipsel, das funktioniert.
Eine Nebenwirkung ist allerdings aufgetreten. Aus unerfindlichen Gründen ist das Diagramm bzw. die y-Achse plötzlich in die Länge gestreckt. Wie könnte ich die y-Achse bzw. das ganze Diagramm wieder etwas "stauchen" (also die Höhe verringern). Habe es mit "height" ausprobiert, das hatte aber keine Wirkung. Aktuell verwende ich den u.s. Code und es kommt dabei das u.s. Bild heraus. Wäre schön, wenn mir jemand noch einen Hinweis geben könnte, wie ich die Höhe des Diagramms ändere bzw. die y-Achse wieder etwas mehr stauche.
Code: Alles auswählen
library(ggplot2)
ggplot(importiert, aes(x = Messzeitpunkt, y = Sprachkompetenz) ) +
coord_cartesian(xlim = c(0.5,2.5), ylim = c(0,10)) +
geom_boxplot( width =0.5 ) +
stat_boxplot(geom = "errorbar", width = 0.5) +
geom_jitter( position = position_jitter(0.3), aes(colour = Messzeitpunkt),
show.legend=FALSE) +
labs(y = 'Sprachkompetenz') +
theme(axis.title.y = element_text(angle = 0,
margin = margin(t = 0, r = 0, b =
0, l = 10)))
- Dateianhänge
-
- Rplot02.png (5.2 KiB) 5185 mal betrachtet