%>%
gapminder_2018 ggplot() +
geom_bar(aes(x = continent, colour = continent))
%>%
gapminder_2018 ggplot() +
geom_bar(aes(x = continent, fill = continent))
Ajustarea pozițiilor (position adjustments)
Fiecare strat geometric geom prezintă, pe lângă o transformare statistică implicită, și o ajustare implicită a poziției care specifică un set de reguli privind modul în care componentele diferite ale graficului trebuie poziționate unele față de altele. Această poziționare implicită este vizibilă în special în cadrul funcției geom_bar
atunci când aplicăm o variabilă diferită caracteristicii vizuale de colorare (e.g. colour
sau fill
).
De exemplu, să considerăm diagrama cu bare care ilustrează numărul de țări de pe fiecare continent folosind setul de date gapminder_2018
. Putem colora barele folosind sau estetica colour
sau estetica fill
(de preferat).
Acum dacă colorăm diagrama cu bare de mai sus în raport cu nivelul de venit (conform Băncii Mondiale) obținem o diagramă cu bare suprapuse colorate în funcție de această variabilă.
Suprapunerea barelor (stack
) în geom_bar
(înălțimea dreptunghiurilor este proporțională cu valoarea lor) se face în mod automat prin ajustarea poziției specificate de argumentul position
(default position = "stack"
). Dacă nu se dorește suprapunerea barelor atunci se poate folosi una din următoarele ajustări: identity
, dodge
sau fill
.
position = "identity"
- opțiunea impune plasarea fiecărui obiect exact unde se află în contextul figurii (nu este foarte folositoare atunci când trasăm diagrame cu bare dar este opțiunea de default pentru diagramele de împrăștiere)
%>%
gapminder_2018 ggplot(aes(x = continent, colour = wb_income)) +
geom_bar(position = "identity", fill = NA)
position = "fill"
- opțiunea este similară custack
, suprapunând barele în așa fel încât înălțimea acestora să fie constantă (este de preferat atunci când dorim să comparăm proporții între grupuri)
position = "dodge"
- opțiunea plasează obiectele unul lângă celălalt și permite astfel o mai bună comparare între valorile individuale
Trebuie menționat că geom_boxplot
are ca și poziționare implicită poziționarea dodge
după cum se poate observa și din exemplul de mai jos.
Tipurile de poziții prezentate mai sus se aplică în special diagramelor cu bare (sau boxplot-urilor) dar, trebuie menționat că pachetul ggplot2
pune la dispoziție și trei metode de ajustare a pozițiilor în cazul punctelor: position_nudge()
- asigură mutarea punctelor printr-o valoare fixată (default în cazul geom_text()
); position_jitter()
- adaugă poziției fiecărui punct un zgomot aleator pentru a dispersa un pic datele; position_jitterdodge()
- permite separarea/evitarea (dodge) puntelor în interiorul grupurilor și apoi adaugă zgomot aleator pozițiilor.
Vom ilustra primele două ajustări de poziții în contextul setului de date gapminder_all
în care afișăm pentru anii 1989, 2000 și 2018 speranța medie de viață pentru fiecare țară.
# initial
%>%
gapminder_all filter(year %in% c("1989", "2000", "2018")) %>%
ggplot(aes(x = year, y = lifeExp)) +
geom_point()
# position nundge
%>%
gapminder_all filter(year %in% c("1989", "2000", "2018")) %>%
ggplot(aes(x = year, y = lifeExp)) +
geom_point(position = position_nudge(x = 0.25, y = 0))
# position jitter - default
%>%
gapminder_all filter(year %in% c("1989", "2000", "2018")) %>%
ggplot(aes(x = year, y = lifeExp)) +
geom_point(position = "jitter")
#position jitter - cu specificatii
%>%
gapminder_all filter(year %in% c("1989", "2000", "2018")) %>%
ggplot(aes(x = year, y = lifeExp)) +
geom_point(position = position_jitter(width = 0.05, height = 0.5))
Pentru mai multe informații referitoare la tipurile de ajustare a pozițiilor în obiectele grafice din ggplot2
se poate consulta documentația fiecărei funcții geom
sau se poate apela comanda
help.search("position_", package = "ggplot2")