Koordinatsystemet

I ggplot2 används Kartesiskt koordinatsystem som standard. I detta koordinatsystem finns en x-axel och y-axel, vilka skär varandra i en rät vinkel. Skärningspunkten kallas origo. Du kan manipulera koordinaterna med ett antal användbara funktioner. För att illustrera dessa funktioners effekt börjar vi med en graf med standardinställningar för koordinater. Grafen skapas med data från gapminder och visar boxplots för den förväntade livslängden på varje kontinent:

ggplot(data = gapminder,
       aes(x = continent,
           y = lifeExp)) +
  geom_boxplot()
Boxplots av förväntad livslängd per kontinent i gapminder, kontinenter på x-axeln och livslängd på y-axeln

Du kan skapa omvända koordinater med coord_flip(), enligt följande:

ggplot(data = gapminder,
       aes(x = continent,
           y = lifeExp)) +
  geom_boxplot() +
  coord_flip()
Samma boxplots av förväntad livslängd per kontinent med omvända axlar efter coord_flip, kontinenterna på y-axeln

Du kan förvisso åstadkomma samma resultat genom att skifta variabel på x och y i aes(), men trots detta är coord_flip() ibland nödvändig för att åstadkomma det önskade resultatet.

Polära koordinater

Med coord_polar() transformeras koordinaterna till polära koordinater. Nedan används geom_bar() med och utan coord_polar() för att illustrera detta.

## Med coord_polar()
ggplot(data = gapminder) +
  geom_bar(aes(x = continent,
           fill=continent),
           width = 1) +
  coord_polar()

## Utan coord_polar()
ggplot(data = gapminder) +
  geom_bar(aes(x = continent,
           fill=continent),
           width = 1)
Stapeldiagram med polära koordinater där antal observationer per kontinent visas som färgade cirkelsektorer
Stapeldiagram med antal observationer per kontinent i gapminder, en färgad stapel per kontinent

Kartor

Med funktionen coord_quickmap() får kartor korrekta proportioner på x-axel och y-axel. Vi använder funktionen map_data() för att importera kartutseende för USA och därefter använder vi geom_polygon() för att rita ut landet med ggplot(). För att kartan ska få korrekt dimensioner används vi coord_quickmap():

usa <- map_data("usa")

ggplot(usa, aes(long, lat, group = group)) +
  geom_polygon(fill = "white", color = "black") +
  coord_quickmap()
Karta över USA ritad med geom_polygon och korrekta proportioner mellan longitud och latitud via coord_quickmap