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 ") 

Legende außerhalb eines R-Basisplots

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 ") 

Lage der Legende außerhalb der Handlung in R

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 ") 

Grundlegender Plot in R mit Legende außerhalb des Plots auf der rechten Seite

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 .

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert