Pylväskaavio & Histogrammi R: ssä (esimerkin kanssa)

Sisällysluettelo:

Anonim

Pylväsdiagrammi on loistava tapa näyttää kategoriset muuttujat x-akselilla. Tämän tyyppinen kaavio kuvaa kahta aspektia y-akselilla.

  1. Ensimmäinen laskee esiintymisten määrän ryhmien välillä.
  2. Toinen näyttää y-akselin muuttujan yhteenvetotilaston (min, max, keskiarvo ja niin edelleen).

Käytät mtcars-tietojoukkoa, jolla on seuraavat muuttujat:

  • cyl: Autossa olevan sylinterin numero. Numeerinen muuttuja
  • am: Lähetyksen tyyppi. 0 automaattista ja 1 manuaalista. Numeerinen muuttuja
  • mpg: Mailia per gallona. Numeerinen muuttuja

Tässä opetusohjelmassa opit

  • Kuinka luoda pylväsdiagrammi
  • Muuta palkkien väriä
  • Muuta voimakkuutta
  • Väri ryhmittäin
  • Lisää ryhmä palkkeihin
  • Pylväsdiagrammi prosentteina
  • Vierekkäiset palkit
  • Histogrammi

Kuinka luoda pylväsdiagrammi

Voit luoda kaavion R: ssä käyttämällä kirjastoa ggplot, joka luo julkaisuvalmiskaaviot. Tämän kirjaston perussyntaksi on:

ggplot(data, mapping = aes()) +geometric objectarguments:data: dataset used to plot the graphmapping: Control the x and y-axisgeometric object: The type of plot you want to show. The most common objects are:- Point: `geom_point()`- Bar: `geom_bar()`- Line: `geom_line()`- Histogram: `geom_histogram()`

Tässä opetusohjelmassa sinua kiinnostaa geometrinen objekti geom_bar (), joka luo pylväsdiagrammin.

Pylväsdiagrammi: määrä

Ensimmäinen kaavio näyttää sylinterin taajuuden, jossa on geom_bar (). Alla oleva koodi on yksinkertaisin syntaksin muoto.

library(ggplot2)# Most basic bar chartggplot(mtcars, aes(x = factor(cyl))) +geom_bar()

Koodin selitys

  • Välität tietojoukon mtcars ggplotille.
  • Argumentin aes () sisälle lisätään x-akseli tekijämuuttujana (cyl)
  • + -Merkki tarkoittaa, että haluat R: n jatkavan koodin lukemista. Se tekee koodista luettavamman rikkomalla sen.
  • Käytä geometrista objektia geom_bar ().

Tuotos:

Huomaa : muista muuntaa muuttujat tekijäksi, muuten R käsittelee muuttujia numeerisina. Katso alla oleva esimerkki.

Muokkaa kaaviota

Kaavion mukauttamiseksi voidaan antaa neljä argumenttia:

- `stat`: Control the type of formatting. By default, `bin` to plot a count in the y-axis. For continuous value, pass `stat = "identity"`- `alpha`: Control density of the color- `fill`: Change the color of the bar- `size`: Control the size the bar

Muuta palkkien väriä

Voit muuttaa palkkien väriä. Huomaa, että palkkien värit ovat kaikki samanlaisia.

# Change the color of the barsggplot(mtcars, aes(x = factor(cyl))) +geom_bar(fill = "coral") +theme_classic()

Koodin selitys

  • Palkkien värejä ohjaa aes (), joka kartoittaa geometrisen objektin sisällä (ts. Ei ggplotissa ()). Voit muuttaa väriä täytearvoilla. Täällä valitset korallin värin.

Tuotos:

Voit käyttää tätä koodia:

grDevices::colors() 

nähdäksesi kaikki värit, jotka ovat käytettävissä R: ssä. Värejä on noin 650.

Muuta voimakkuutta

Voit lisätä tai vähentää palkkien värin voimakkuutta

# Change intensityggplot(mtcars,aes(factor(cyl))) +geom_bar(fill = "coral",alpha = 0.5) +theme_classic()

Koodin selitys

  • Voit lisätä / vähentää palkin voimakkuutta muuttamalla alfa-arvoa. Suuri alfa lisää intensiteettiä, ja matala alfa vähentää intensiteettiä. alfa vaihtelee välillä 0-1. Jos 1, niin väri on sama kuin paletti. Jos 0, väri on valkoinen. Valitset alfa = 0,1.

Tuotos:

Väri ryhmittäin

Voit muuttaa palkkien värejä, mikä tarkoittaa yhtä erilaista väriä kullekin ryhmälle. Esimerkiksi cyl muuttujalla on kolme tasoa, sitten voit piirtää pylväskaavion kolmella värillä.

# Color by groupggplot(mtcars, aes(factor(cyl),fill = factor(cyl))) +geom_bar()

Koodin selitys

  • Argumenttien täyttö aes: n sisällä () sallii palkin värin muuttamisen. Vaihdat väriä asettamalla fill = x-axis variable. Esimerkissä x-akselimuuttuja on cyl; täyttö = kerroin (syl)

Tuotos:

Lisää ryhmä palkkeihin

Voit jakaa y-akselin edelleen toisen tekijätason perusteella. Voit esimerkiksi laskea automaattisen ja manuaalivaihteiston määrän sylinterityypin perusteella.

Toimi seuraavasti:

  • Vaihe 1: Luo tietokehys mtcars-tietojoukolla
  • Vaihe 2: Merkitse am-muuttuja automaattivaihteistolle ja man manuaalivaihteistolle. Muunna am ja cyl tekijäksi, jotta sinun ei tarvitse käyttää kerrointa () ggplot () -funktiossa.
  • Vaihe 3: Piirrä pylväsdiagrammi laskeaksesi sylinterikohtaisen lähetyksen määrän
library(dplyr)# Step 1data <- mtcars % > %#Step 2mutate(am = factor(am, labels = c("auto", "man")),cyl = factor(cyl))

Sinulla on tietojoukko valmis, voit piirtää kaavion;

# Vaihe 3

ggplot(data, aes(x = cyl, fill = am)) +geom_bar() +theme_classic()

Koodin selitys

  • Ggpplot () sisältää datajoukon tiedot ja aes ().
  • Aes () sisältää muuttujan x-akseli ja minkä muuttujan tarvitaan palkin täyttämiseen (ts. Am)
  • geom_bar (): Luo pylväskaavio

Tuotos:

Kartoitus täyttää palkin kahdella värillä, yksi jokaiselle tasolle. Ryhmän vaihtaminen on vaivatonta valitsemalla muita tekijämuuttujia aineistosta.

Pylväsdiagrammi prosentteina

Voit visualisoida palkin prosentteina raakamäärän sijaan.

# Pylväskaavio prosentteina

ggplot(data, aes(x = cyl, fill = am)) +geom_bar(position = "fill") +theme_classic()

Koodin selitys

  • Käytä position = "fill" geom_bar () -argumentissa luodaksesi grafiikan, jonka prosenttiosuus on y-akselilla.

Tuotos:

Vierekkäiset palkit

Pylväsdiagrammi on helppo piirtää ryhmän muuttujan vierekkäin.

# Bar chart side by sideggplot(data, aes(x = cyl, fill = am)) +geom_bar(position = position_dodge()) +theme_classic()

Koodin selitys

  • position = position_dodge (): Kertoo nimenomaisesti, kuinka palkit järjestetään

Tuotos:

Histogrammi

Pylväskaavion opetusohjelman toisessa osassa voit edustaa muuttujien ryhmää arvoilla y-akselilla.

Tavoitteenasi on luoda kaavio, jossa on keskimääräinen mailia gallonaa kohti jokaiselle sylinterityypille. Voit piirtää informatiivisen kaavion seuraavasti:

  • Vaihe 1: Luo uusi muuttuja, jonka keskimääräinen mailia gallonaa kohti sylinterin mukaan
  • Vaihe 2: Luo histogrammi
  • Vaihe 3: Vaihda suunta
  • Vaihe 4: Vaihda väriä
  • Vaihe 5: Muuta kokoa
  • Vaihe 6: Lisää tunnisteita kaavioon

Vaihe 1) Luo uusi muuttuja

Luot datakehyksen nimeltä data_histogrammi, joka palauttaa keskimääräiset mailit gallonaa kohti auton sylinterien lukumäärällä. Kutsut tätä uutta muuttujaa mean_mpg ja pyöristät keskiarvon kahdella desimaalilla.

# Vaihe 1

data_histogram <- mtcars % > %mutate(cyl = factor(cyl)) % > %group_by(cyl) % > %summarize(mean_mpg = round(mean(mpg), 2))

Vaihe 2) Luo histogrammi

Voit piirtää histogrammin. Se ei ole valmis kommunikoimaan toimitettavaksi asiakkaalle, mutta antaa meille intuition trendistä.

ggplot(data_histogram, aes(x = cyl, y = mean_mpg)) +geom_bar(stat = "identity")

Koodin selitys

  • Aesilla () on nyt kaksi muuttujaa. Sylimuuttuja viittaa x-akseliin ja keskiarvo_mpg on y-akseli.
  • Sinun on välitettävä argumentti stat = "identiteetti", jotta y-akselin muuttujaa kutsutaan numeeriseksi arvoksi. geom_bar käyttää oletusarvona stat = "bin".

Tuotos:

Vaihe 3) Vaihda suunta

Vaihdat kuvaajan suunnan pystysuorasta vaakasuoraan.

ggplot(data_histogram, aes(x = cyl, y = mean_mpg)) +geom_bar(stat = "identity") +coord_flip()

Koodin selitys

  • Voit hallita kuvaajan suuntaa coord_flip () -toiminnolla.

Tuotos:

Vaihe 4) Vaihda väri

Voit erottaa palkkien värit x-akselimuuttujan tekijätason mukaan.

ggplot(data_histogram, aes(x = cyl, y = mean_mpg, fill = cyl)) +geom_bar(stat = "identity") +coord_flip() +theme_classic()

Koodin selitys

  • Voit piirtää kaavion ryhmittäin täyttö = cyl-kartoituksen avulla. R huolehtii väreistä automaattisesti sylinterimuuttujan tason mukaan

Tuotos:

Vaihe 5) Muuta kokoa

Jotta kaavio näyttää kauniimmalta, pienennetään palkin leveyttä.

graph <- ggplot(data_histogram, aes(x = cyl, y = mean_mpg, fill = cyl)) +geom_bar(stat = "identity",width = 0.5) +coord_flip() +theme_classic()

Koodin selitys

  • Geom_bar (): n sisällä oleva leveysargumentti ohjaa palkin kokoa. Suurempi arvo lisää leveyttä.
  • Huomaa, että tallennat kaavion muuttujakaavioon. Teet niin, koska seuraava vaihe ei muuta muuttujakaavion koodia. Se parantaa koodin luettavuutta.

Tuotos:

Vaihe 6) Lisää tarrat kaavioon

Viimeinen vaihe on lisätä muuttujan mean_mpg arvo tunnisteeseen.

graph +geom_text(aes(label = mean_mpg),hjust = 1.5,color = "white",size = 3) +theme_classic()

Koodin selitys

  • Funktio geom_text () on hyödyllinen tekstin esteettisyyden hallitsemiseksi.
    • label =: Lisää tarra palkkien sisään
    • mean_mpg: Käytä tunnisteessa muuttujaa mean_mpg
  • hjust ohjaa tarran sijaintia. Arvot, jotka on suljettu arvoon 1, osoittavat tarran palkin yläosassa, ja korkeammat arvot vievät tarran alareunaan. Jos kuvaajan suunta on pystysuora, muuta hjust arvoksi vjust.
  • color = "white": Muuta tekstin väriä. Tässä käytetään valkoista väriä.
  • size = 3: Aseta tekstin koko.

Tuotos:

Yhteenveto

Pylväsdiagrammi on hyödyllinen, kun x-akseli on kategorinen muuttuja. Y-akseli voi olla joko laskenta- tai yhteenvetotilasto. Alla olevassa taulukossa on yhteenveto pylväskaavion hallinnasta ggplot2: lla:

Tavoite

koodi

Kreivi

ggplot(df, eas(x= factor(x1)) + geom_bar()

Laske eri värillä

ggplot(df, eas(x= factor(x1), fill = factor(x1))) + geom_bar()

Laske ryhmillä, pinottu

ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar(position=position_dodge())

Laske ryhmillä, vierekkäin

ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar()

Laske ryhmillä, pinottu prosentteina

ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar(position=position_dodge())

Arvot

ggplot(df, eas(x= factor(x1)+ y = x2) + geom_bar(stat="identity")