Verander de grootte van de titel en labels van de assen in ggplot2

Ik heb een heel eenvoudige vraag, waar ik moeite mee heb om het antwoord te vinden. Ik hoopte dat iemand hier me zou kunnen helpen.

Een voorbeeld van een dataframe wordt hieronder weergegeven:

a <- c(1:10)
b <- c(10:1)
df <- data.frame(a,b)
library(ggplot2)
g = ggplot(data=df) + geom_point(aes(x=a, y=b)) +
  xlab("x axis")
g

Ik wil alleen leren hoe ik de tekstgrootte van de assentitels en de assenlabels wijzig.


Antwoord 1, autoriteit 100%

Je kunt de astekst en labelgrootte wijzigen met de argumenten axis.text=en axis.title=in de functie theme(). Als u bijvoorbeeld alleen de titelgrootte van de x-as wilt wijzigen, gebruikt u axis.title.x=.

g+theme(axis.text=element_text(size=12),
        axis.title=element_text(size=14,face="bold"))

Er zijn goede voorbeelden over het instellen van verschillende theme()parameters in ggplot2-pagina.


Antwoord 2, autoriteit 17%

Ik denk dat een betere manier om dit te doen is om het argument base_sizete wijzigen. Het zal de tekstgroottes consequent vergroten.

g + theme_grey(base_size = 22)

Zoals hierte zien is.


Antwoord 3, autoriteit 7%

Als u veel grafieken maakt, kunt u het beu zijn van het typen voor elke grafiek de regels van de codecontrole voor de grootte van de titels en teksten. Wat ik typisch doe, is het creëren van een object (van klasse “thema” “GG”) die de gewenste themakarakteristieken definieert. U kunt dat doen aan het begin van uw code.

My_Theme = theme(
  axis.title.x = element_text(size = 16),
  axis.text.x = element_text(size = 14),
  axis.title.y = element_text(size = 16))

Volgende, alles wat je hoeft te doen is mijn_theme aan je grafieken toevoegen.

g + My_Theme

Als u nog een andere grafiek, G1 hebt, schrijf dan gewoon:

g1 + My_Theme 

enzovoort.


Antwoord 4

Om de grootte van (bijna) alle tekstelementen, op één plaats en synchroon te wijzigen, is rel()vrij efficiënt:
g+theme(text = element_text(size=rel(3.5))

Mogelijk wilt u het nummer een beetje aanpassen, om het optimale resultaat te krijgen. Het bepaalt zowel de horizontale als verticale aslabels en titels en andere tekstelementen, op dezelfde schaal. Eén uitzondering is de titels van faceted roosters die handmatig moeten worden ingesteld op dezelfde waarde, bijvoorbeeld als zowel X- als Y-facetten in een grafiek worden gebruikt:
theme(text = element_text(size=rel(3.5)),
strip.text.x = element_text(size=rel(3.5)),
strip.text.y = element_text(size=rel(3.5)))

Other episodes