Disegna elementi della legenda con colori diversi in R

Jinku Hu 14 luglio 2021
  1. Utilizzare la funzione legend per aggiungere legenda ai grafici in R
  2. Usa la doppia chiamata “leggenda” per disegnare oggetti leggenda con colori diversi
Disegna elementi della legenda con colori diversi in R

Questo articolo dimostrerà come disegnare elementi della legenda con colori diversi in R.

Utilizzare la funzione legend per aggiungere legenda ai grafici in R

La funzione legend viene utilizzata per disegnare oggetti legenda sui grafici. Richiede le coordinate x e y come primi due argomenti per specificare la posizione della legenda. Tuttavia, può essere specificato utilizzando parole chiave come: "left", "bottomright", ecc. Il parametro successivo si chiama legend, ed è rappresentato come un vettore di caratteri che devono essere visualizzati nella legenda . In questo caso, disegniamo linee e punti indicati da una forma triangolare o circolare. Linee e punti hanno colori diversi e devono essere visualizzati di conseguenza nella legenda. Il seguente frammento di codice disegna solo forme e testo nella legenda.

library(ggplot2)

plot( 0, type = "n", xlim = c(0,5), ylim = c(0,5) )
A <- matrix( c( c(4,1,3,2), c(1,3,4,4)), ncol = 2 )
B <- matrix( c( c(1,4,3,2), c(1,3,1,1)), ncol = 2 )

lines( A, col = "brown" )
points( A, col = "blue", pch = 17 )
lines( B, col = "cyan" )
points( B, col = "purple", pch = 19 )


legend( x = "topleft",
        legend = c("Brown line, blue triangles","Cyan line, purple points"),
        col = c("blue","purple"), lwd = 2, lty = c(0,0),
        pch = c(17,19) )

r legenda della trama 1

Possiamo anche aggiungere righe aumentando i valori del vettore argomento lty. Notare che quelli corrispondono alla linea retta e ininterrotta. D’altra parte, gli argomenti pch rappresentano i simboli di plottaggio che mappano a valori interi 0:25 e sono descritti nella documentazione della funzione points.

library(ggplot2)

plot( 0, type = "n", xlim = c(0,5), ylim = c(0,5) )
A <- matrix( c( c(4,1,3,2), c(1,3,4,4)), ncol = 2 )
B <- matrix( c( c(1,4,3,2), c(1,3,1,1)), ncol = 2 )

lines( A, col = "brown" )
points( A, col = "blue", pch = 17 )
lines( B, col = "cyan" )
points( B, col = "purple", pch = 19 )

legend( x = "topleft",
        legend = c("Brown line, blue triangles","Cyan line, purple points"),
        col = c("brown","cyan"), lwd = 1, lty = c(1,1),
        pch = c(17,19), merge = FALSE)

r legenda della trama 2

Usa la doppia chiamata “leggenda” per disegnare oggetti leggenda con colori diversi

L’esempio precedente mostra le linee e le forme di un singolo elemento con lo stesso colore. Questo può essere risolto con le due invocazioni della funzione legend, ciascuna delle quali visualizza linee e forme separatamente con colori diversi. Attenzione però, una delle chiamate dovrebbe avere valori vettoriali vuoti per il parametro legend.

library(ggplot2)

plot( 0, type = "n", xlim = c(0,5), ylim = c(0,5) )
A <- matrix( c( c(4,1,3,2), c(1,3,4,4)), ncol = 2 )
B <- matrix( c( c(1,4,3,2), c(1,3,1,1)), ncol = 2 )

lines( A, col = "brown" )
points( A, col = "blue", pch = 17 )
lines( B, col = "cyan" )
points( B, col = "purple", pch = 19 )


legend( x = "topleft",
        legend = c("Brown line, blue triangles","Cyan line, purple points"),
        col = c("brown","cyan"), lwd = 1, lty = c(1,1),
       pch = c(NA,NA) )

legend( x = "topleft",
        legend = c("",""),
        col = c("blue","purple"), lwd = 1, lty = c(0,0),
        pch = c(17,19), bty= 'n')

r legenda della trama 3

Autore: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

Articolo correlato - R Plot