Wenn ich ggplot in R verwende, wie entferne ich Ränder um den Zeichnungsbereich herum?

8

Ich versuche, einige Fraktale zu erzeugen und habe eine Frage bezüglich der Ränder mit ggplot in R. Ich verwende den folgenden Code, um die Fraktale zu erzeugen.

%Vor%

Ich suche nach Ideen, um die Ränder um die Grundstücksfläche zu entfernen. Ich habe eine ganze Reihe von Tricks ausprobiert, wie das Setzen von Parametern im 'par', xaxes / yaxes, last_plot () + labs (x = NULL, y = NULL) usw., aber nichts scheint zu funktionieren.

Hat jemand eine Idee, diesen hartnäckigen Rand von der Handlung zu entfernen? Ich habe auch überlegt, einen transparenten Hintergrund zu erstellen, aber ich müsste die Ränder ausschneiden - ein Schritt, den ich vermeiden möchte.

    
jixtacom 06.07.2015, 19:56
quelle

4 Antworten

7

Ein Ansatz, der nur das Plot-Panel aus dem ggplot-Layout auswählt. Er erstellt den ggplot, setzt Elemente innerhalb des Plot-Panels auf element_blank und keine Ausdehnung der x- und y-Skalen. Es erstellt dann den ggplot grob, so dass das Plot-Panel nur aus dem Layout ausgewählt werden kann.

Nebenerstellung: Aktualisierung auf ggplot2 2.2.0

%Vor%     
Sandy Muspratt 06.07.2015, 22:31
quelle
9

Sie können auch theme_nothing() aus dem cowplot -Paket verwenden:

%Vor%

Leider müssen Sie immer noch labs(x = NULL, y = NULL) hinzufügen, da es in ggplot2s Theme-Maschinerie keine Möglichkeit gibt, die Achsen vollständig zu entfernen. Und Sie müssen expand=c(0,0) in den Skalierungsparametern festlegen, um sicherzustellen, dass die Skalierung nicht über Ihren Datenbereich hinausreicht.

Ergebnis:

    
Claus Wilke 06.07.2015 21:06
quelle
7

Nachdem Sie Ihren Code verwendet haben, sehe ich klarer, wonach Sie suchen. Dies:

%Vor%

Sie müssen die Etiketten entfernen, nicht erweitern die x & amp; y-Achse und setzen Sie harte Grenzen. Die null s sind ebenfalls wichtig. '

Dies kann auch mit gb <- ggplotGrob(gg) geschehen und die grobs & amp; Parameter, aber ich denke, dass Sie wahrscheinlich bekommen, was Sie brauchen.

    
hrbrmstr 06.07.2015 20:49
quelle
2

Ich konnte den weißen Rahmen entfernen, indem ich negative Plot-Ränder setzte und die Achsentitel auf NULL setzte. Ich habe die Änderungen im folgenden Code markiert.

%Vor%     
eipi10 06.07.2015 20:57
quelle

Tags und Links