So zeichnen sie eine legende außerhalb einer handlung in r
Der einfachste Weg, eine Legende außerhalb eines Basis-R-Diagramms zu zeichnen, besteht darin, mit der folgenden Syntax zusätzlichen Platz rechts vom Diagramm hinzuzufügen:
by( mar =c(5, 4, 4, 8), xpd= TRUE )
Das folgende Schritt-für-Schritt-Beispiel zeigt, wie Sie diese Syntax in der Praxis anwenden können.
Schritt 1: Erstellen Sie die Daten
Erstellen wir zunächst einige Daten, mit denen wir arbeiten können:
#create data frames df1 <- data. frame (x=c(1, 2, 3, 4, 5, 6, 7), y=c(2, 7, 19, 26, 24, 29, 31)) df2 <- data. frame (x=c(1, 2, 3, 4, 5, 6, 7), y=c(4, 4, 7, 9, 12, 13, 8))
Schritt 2: Erstellen Sie einen Plot mit einer Legende außerhalb des Plots
Als Nächstes erstellen wir einen Pfad und fügen außerhalb des Pfads in der oberen rechten Ecke eine Legende hinzu:
#add extra space to the right of the plot
by( mar =c(5, 4, 4, 8), xpd= TRUE )
#plot both data frames
plot(y ~ x, df1, pch =1, main=" Scatterplot with multiple groups ")
points(y ~ x, df2, pch =3)
#add legend outside of plot
legend(" topright ", inset =c(-0.2, 0), legend =c(" df1 "," df2 "), pch =c(1,3), title =" Data ")
Schritt 3: Ändern Sie den Legendenstandort
Das Argument inset(x, y) kann verwendet werden, um die Position der Legende rechts vom Diagramm zu steuern. Zum Beispiel können wir das Argument x negativer machen, um die Legende noch weiter nach rechts zu verschieben:
#add extra space to the right of the plot
by( mar =c(5, 4, 4, 8), xpd= TRUE )
#plot both data frames
plot(y ~ x, df1, pch =1, main=" Scatterplot with multiple groups ")
points(y ~ x, df2, pch =3)
#add legend outside of plot
legend(" topright ", inset =c(-0.3, 0), legend =c(" df1 "," df2 "), pch =c(1,3), title =" Data ")
Wir können das y- Argument auch positiver formulieren, um die Legende nach unten zu drücken:
#add extra space to the right of the plot
by( mar =c(5, 4, 4, 8), xpd= TRUE )
#plot both data frames
plot(y ~ x, df1, pch =1, main=" Scatterplot with multiple groups ")
points(y ~ x, df2, pch =3)
#add legend outside of plot
legend(" topright ", inset =c(-0.3, .5), legend =c(" df1 "," df2 "), pch =c(1,3), title =" Data ")
Fühlen Sie sich frei, die Werte des Arguments inset(x, y) zu ändern, um die Position der Legende zu ändern.
Weitere R-Tutorials finden Sie auf dieser Seite .