3 Grafice cu ggplot()- structura generală

Fucția ggplot() se poate folosi pentru a construi grafice adăugând straturi de imagini. Începem întotdeauna cu pregătirea suprafeței, indicând tabelul (în cazul nostru gapminder_2007_fara_an) și variabilele pe care le vom reprezenta pe axe. Acestea vor fi incluse in funcția aes care asigură comunicarea datelor între straturile graficului.

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp))

Ce apare pe axa \(x\)? dar pe axa \(y\)?

Adăugăm un strat nou graficului cu un semn + la sfărșitul liniei. Pe linia următoare vom folosi o funcție care reprezintă grafic efectiv datele. Pachetul ggplot oferă un set de funcții numite geometrii pentru diferite tipuri de reprezentări. Mai jos folosim geom_point pentru a reprezenta un nor de puncte cu variabilele indicate in estetica aes():

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp))+
  geom_point()

In interiorul funcțiilor care încep cu geom_ sau în aes() putem particulariza graficul la alegere.

colorăm punctele în funție de valorile continent:

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, color=continent))+
  geom_point()

sau (același lucru):

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp))+
  geom_point( aes(color=continent))

Care e diferența dintre codurile din cele două celule de mai sus?

Setăm mărimea punctelor în functie de pop:

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp))+
  geom_point( aes(color=continent, size=pop))

sau în interiorul aes():

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, size=pop))+
  geom_point( aes(color=continent))

3.1 Adăugarea de etichete/titlu graficului

etichete axe:

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, size=pop))+
  geom_point( aes(color=continent))+
  xlab('modific eticheta axa x cu GDP')
ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, size=pop))+
  geom_point( aes(color=continent))+
  xlab('modific eticheta axa x cu GDP')+
  ylab('modific eticheta axa y care are LifeExp')

titlu grafic:

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, size=pop))+
  geom_point( aes(color=continent))+
  labs(x='eticheta x', 
       y='eticheta y',
       title='Titlu pt grafic'
       )

subtitlu grafic

ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, size=pop))+
  geom_point( aes(color=continent))+
  labs(x='eticheta x', 
       y='eticheta y',
       title='Titlu pt grafic',
       subtitle='Ceva subtitlu',
       caption = 'si alt text explicativ'
       )

Creez un obiect de tip grafic pe care îl denumesc grafic. Îl voi regăsi în lista de variabile, și îl pot afișa scriindu-i numele.

grafic <- ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, size=pop))+
  geom_point( aes(color=continent))+
  labs(x='eticheta x', 
       y='eticheta y',
       title='Titlu pt grafic',
       subtitle='Ceva subtitlu',
       caption = 'si alt text explicativ'
       )

pentru a-l afișa scriem numele lui:

grafic

sau

grafic1 <- ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, size=pop))+
  geom_point( aes(color=continent))
grafic1

Unui obiect de tip grafic ggplot putem să-i adăugăm straturi noi:

grafic1+
  xlab('alta eticheta pentru x')

Schimb numele variabilelor din tabel pentru a afișa direct eticheta dorită

colnames(gapminder_2007_fara_an)
## [1] "country"   "continent" "lifeExp"   "pop"       "gdpPercap"
colnames(gapminder_2007_fara_an)[1]='Tara'
colnames(gapminder_2007_fara_an)[4]='Populatia'
grafic1 <- ggplot(data=gapminder_2007_fara_an, aes(x=gdpPercap, y=lifeExp, size=Populatia))+
  geom_point( aes(color=continent))
grafic1