(R) Cum se schimbă dimensiunea cheii legendei în ggplot2

URMĂREȘTE-NE
16,065FaniÎmi place
1,142CititoriConectați-vă

Blogul lui Zhenguo Zhang https://fortune9.netlify.app/2026/04/27/r-how-to-change-legend-key-size-in-ggplot2/ –

În ggplot2cheile de legendă (simbolurile de lângă etichete) își moștenesc de obicei dimensiunea și aspectul din straturile din complot. De exemplu, dacă aveți o diagramă de dispersie cu puncte foarte mici, cheile de legendă vor fi, de asemenea, foarte mici, ceea ce le face greu de văzut.

Pentru a remedia acest lucru fără a modifica dimensiunea punctelor din diagrama reală, puteți utiliza override.aes argument în interior guide_legend().

Problema: chei de legendă minuscule

Când trasăm multe puncte de date, deseori scadem size pentru a evita supraplotarea. Cu toate acestea, acest lucru face cheile legendei mici:

library(ggplot2)

p <- ggplot(iris, aes(Sepal.Length, Sepal.Width, color = Species)) +
  geom_point(size = 0.5) + 
  theme_minimal() +
  labs(title = "Tiny Legend Keys")

p

Soluția: Utilizarea override.aes

Prin utilizarea guides()putem „depăși” estetica legendei. Acest lucru ne permite să păstrăm punctele mici din complot, în timp ce facem cheile de legendă mari și clare.

Dacă legenda ta este pentru culoare estetic:

p_fixed <- p + 
  guides(color = guide_legend(override.aes = list(size = 5))) +
  labs(title = "Fixed Legend Keys (Size 5)")

p_fixed

Dacă ai fi folosit umple (de exemplu, într-un diagramă cu bare sau într-un diagramă cu case), pur și simplu ați schimba color la fill:

guides(fill = guide_legend(override.aes = list(size = 5)))

Ajustarea textului legendei și a dimensiunii titlului

Rețineți că override.aes afectează doar simbolurile din interiorul legendei. Pentru a modifica dimensiunea etichetelor sau a titlului legendei, ar trebui să utilizați theme() funcţie:

p_fixed + 
  theme(
    legend.text = element_text(size = 12),   # Legend labels
    legend.title = element_text(size = 14, face = "bold") # Legend title
  )

Rezumat

  • Utilizare guides(color = guide_legend(override.aes = list(size = ...))) pentru a schimba dimensiunea simbolului.
  • Utilizare theme(legend.text = element_text(size = ...)) pentru a schimba dimensiunea textului.

– https://fortune9.netlify.app/2026/04/27/r-how-to-change-legend-key-size-in-ggplot2/ –

Dominic Botezariu
Dominic Botezariuhttps://www.noobz.ro/
Creator de site și redactor-șef.

Cele mai noi știri

Pe același subiect

LĂSAȚI UN MESAJ

Vă rugăm să introduceți comentariul dvs.!
Introduceți aici numele dvs.