Verschiedene y-Limits auf ggplot facet grid balken?

8

Meine Daten:

%Vor%

Mein Problem ist, dass ich ein Balkendiagramm erstellen möchte, indem facet_grid jeden Satz von avg-Daten am Tag anzeigt, aber die Beobachtungen sind ähnlich genug, dass ich es hilfreich finde, die y-Limits mit scale_y_continuous zu spezifizieren.

Also, wenn ich meinen ggplot g <- ggplot(df, aes(x=day, y=value)) zuweiße, kann ich die Hälfte von dem bekommen, was ich möchte:

%Vor%

AND

%Vor%

Allerdings weiß ich nicht, wie man das Facettenraster benutzt und dann einen scale_y_cont, der die Größe der einzelnen y-Achsen begrenzt. Gibt es eine Lösung?

    
knl 16.05.2015, 20:37
quelle

1 Antwort

8

Sie können separate y-Bereiche für verschiedene Facetten erstellen, wenn Sie geom_point verwenden, aber ich weiß nicht, wie ich das mit geom_bar machen soll. Um spezifische y-Bereiche mit facet_wrap und geom_bar zu definieren, besteht die einzige mir bekannte Möglichkeit darin, separate Plots zu erstellen und sie dann mit grid.arrange aus dem gridExtra -Paket nebeneinander zu setzen. (Wenn Sie eine vertikale Skala verwenden, die nicht auf Null geht, werden die Unterschiede zwischen Punkten / Balken übertrieben, was irreführend sein kann, aber Sie müssen entscheiden, ob dies für Ihren speziellen Fall sinnvoll ist.)

Erstens, hier ist die geom_point version: Die Idee ist, einen "Dummy" -Datenrahmen mit unteren und oberen Werten, die Sie für Ylim haben wollen, zu erstellen und dann mit geom_blank zu "plotten". geom_blank zeigt nichts an, aber das Hinzufügen dieses Geoms stellt sicher, dass der Achsenbereich für jede Facette der gewünschte ist.

%Vor%

Und hier sind separate Plots, zusammengestellt mit grid.arrange :

%Vor%

Um geom_segment (pro Kommentar) zu verwenden, könntest du folgendes tun:

%Vor%     
eipi10 16.05.2015, 23:00
quelle

Tags und Links