Jak narysować legendę poza fabułą w r
Najłatwiejszym sposobem narysowania legendy poza podstawowym wykresem R jest dodanie dodatkowej przestrzeni po prawej stronie wykresu, korzystając z następującej składni:
by( mar =c(5, 4, 4, 8), xpd= TRUE )
Poniższy przykład krok po kroku pokazuje, jak zastosować tę składnię w praktyce.
Krok 1: Utwórz dane
Najpierw utwórzmy dane do pracy:
#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))
Krok 2: Utwórz fabułę z legendą poza fabułą
Następnie utwórzmy ścieżkę i dodajmy legendę poza ścieżką w prawym górnym rogu:
#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 ")
Krok 3: Zmień lokalizację legendy
Argumentu inset(x, y) można użyć do kontrolowania położenia legendy po prawej stronie wykresu. Na przykład możemy uczynić argument x bardziej ujemnym, aby przesunąć legendę jeszcze bardziej w prawo:
#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 ")
Możemy również uczynić argument y bardziej pozytywnym, aby przesunąć legendę niżej:
#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 ")
Możesz dowolnie modyfikować wartości argumentu inset(x, y), aby zmienić lokalizację legendy.
Więcej samouczków dotyczących języka R można znaleźć na tej stronie .