Legenda comune per più trame in R

Sto usando R e Latex insieme per disegnare alcune trame e sto cercando di creare una leggenda comune per tutti loro.

Ho sei lotti separati sulla stessa pagina. Ho creato ciascun grafico separatamente in R e poi li ho visualizzati sulla stessa pagina usando \ includegraphics in Latex.

Ogni grafico ha le stesse informazioni sulla legenda, quindi piuttosto che avere una legenda in ogni trama mi piacerebbe avere una legenda orizzontale in mostra nella parte inferiore della pagina. Sfortunatamente, non riesco a capire come fare una leggenda senza una trama. Quando avrò un’immagine separata per la legenda, saprò come includerla nella parte inferiore della pagina usando Latex.

Il codice che sto cercando di usare per rendere la leggenda è

plot(1, type = "n", axes=FALSE, xlab="", ylab="") plot_colors <- c("blue","black", "green", "orange", "pink") legend(.6,1.3,legend = c("Fabricated Metal", "Iron and Steel", "Paper", "Beverages", "Tobacco"), col=plot_colors, lwd=5, cex=.5, horiz = TRUE) 

Ma il carattere è troppo piccolo e il lato del riquadro della legenda è troncato.

    Un semplice esempio di ciò di cui stavo parlando:

     m <- matrix(c(1,2,3,4,5,6,7,7,7),nrow = 3,ncol = 3,byrow = TRUE) layout(mat = m,heights = c(0.4,0.4,0.2)) for (i in 1:6){ par(mar = c(2,2,1,1)) plot(runif(5),runif(5),xlab = "",ylab = "") } plot(1, type = "n", axes=FALSE, xlab="", ylab="") plot_colors <- c("blue","black", "green", "orange", "pink") legend(x = "top",inset = 0, legend = c("Fabricated Metal", "Iron and Steel", "Paper","Beverages", "Tobacco"), col=plot_colors, lwd=5, cex=.5, horiz = TRUE) 

    inserisci la descrizione dell'immagine qui

    Prova questo,

     plot_colors <- c("blue","black", "green", "orange", "pink") text <- c("Fabricated Metal", "Iron and Steel", "Paper", "Beverages", "Tobacco") plot.new() par(xpd=TRUE) legend("center",legend = text, text.width = max(sapply(text, strwidth)), col=plot_colors, lwd=5, cex=1, horiz = TRUE) par(xpd=FALSE)