Tulbadiagramm on suurepärane võimalus kategooriliste muutujate kuvamiseks x-teljel. Seda tüüpi graafid tähistavad y-telje kahte aspekti.
- Esimene loeb rühmade vahel esinemiste arvu.
- Teine näitab y-telje muutuja koondstatistikat (min, max, keskmine ja nii edasi).
Kasutate mtcarsi andmekogumit koos järgmiste muutujatega:
- cyl: auto silindri arv. Numbriline muutuja
- am: edastuse tüüp. 0 automaatse ja 1 manuaalse jaoks. Numbriline muutuja
- mpg: miili galloni kohta. Numbriline muutuja
Selles õpetuses saate teada
- Kuidas luua tulpdiagrammi
- Muutke ribade värvi
- Muutke intensiivsust
- Värvimine rühmade kaupa
- Lisage ribadesse rühm
- Tulpdiagramm protsentides
- Kõrvuti ribad
- Histogramm
Kuidas luua tulpdiagrammi
R-is graafi loomiseks võite kasutada teeki ggplot, mis loob avaldamiseks valmis graafikud. Selle teegi põhisüntaks 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()`
Selles õpetuses olete huvitatud geomeetrilisest objektist geom_bar (), mis loob tulbadiagrammi.
Tulbadiagramm: loendus
Teie esimene graafik näitab silindri sagedust geom_bar () abil. Allolev kood on kõige põhilisem süntaks.
library(ggplot2)# Most basic bar chartggplot(mtcars, aes(x = factor(cyl))) +geom_bar()
Koodi selgitus
- Andmekogumi mtcars edastate ggplotile.
- Argumendi aes () sees lisate x-telje teguri muutujana (cyl)
- + Märk tähendab, et soovite, et R jätkaks koodi lugemist. See muudab koodi rikkudes selle loetavamaks.
- Geomeetrilise objekti jaoks kasutage geom_bar ().
Väljund:
Märkus : muutke muutujad kindlasti teguriks, vastasel juhul käsitleb R muutujaid numbrina. Vaadake allpool toodud näidet.
Kohandage graafikut
Graafiku kohandamiseks võib edastada neli argumenti:
- `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
Muutke ribade värvi
Saate muuta ribade värvi. Pange tähele, et ribade värvid on kõik sarnased.
# Change the color of the barsggplot(mtcars, aes(x = factor(cyl))) +geom_bar(fill = "coral") +theme_classic()
Koodi selgitus
- Ribade värve kontrollib geomeetrilise objekti sees kaardistatud aes () (st mitte ggplot ()). Värvi saate muuta täiteargumentidega. Siin valite korallvärvi.
Väljund:
Võite kasutada seda koodi:
grDevices::colors()
kõigi R-s saadaolevate värvide nägemiseks. Värve on umbes 650.
Muutke intensiivsust
Saate ribade värvi intensiivsust suurendada või vähendada
# Change intensityggplot(mtcars,aes(factor(cyl))) +geom_bar(fill = "coral",alpha = 0.5) +theme_classic()
Koodi selgitus
- Riba intensiivsuse suurendamiseks / vähendamiseks saate muuta alfa väärtust. Suur alfa suurendab intensiivsust ja madal alfa vähendab intensiivsust. alfa vahemikus 0 kuni 1. Kui 1, siis on värv sama mis palett. Kui 0, on värv valge. Valite alfa = 0,1.
Väljund:
Värvimine rühmade kaupa
Saate muuta ribade värve, mis tähendab iga rühma jaoks ühte erinevat värvi. Näiteks on muutujal cyl kolm taset, seejärel saate joonistada tulpdiagrammi kolme värviga.
# Color by groupggplot(mtcars, aes(factor(cyl),fill = factor(cyl))) +geom_bar()
Koodi selgitus
- Argumendi täitmine aes () sees võimaldab muuta riba värvi. Värvi muudate, määrates muutujana täit = x-telg. Teie näites on x-telje muutuja cyl; täitmine = tegur (silindrites)
Väljund:
Lisage ribadesse rühm
Võite y-telge veelgi jagada teise teguri taseme põhjal. Näiteks võite lugeda automaat- ja manuaalkäigukasti arvu vastavalt silindri tüübile.
Te jätkate järgmiselt:
- 1. samm: looge andmeraam mtcarsi andmekogumiga
- 2. samm: sildistage muutuja am automaatkäigukasti jaoks automaatse ja manuaalkäigukasti jaoks. Teisendage teguriks am ja cyl nii, et te ei peaks funktsioonis ggplot () kasutama tegurit ().
- 3. samm: joonistage tulpdiagramm silindrite kaupa ülekande arvu lugemiseks
library(dplyr)# Step 1data <- mtcars % > %#Step 2mutate(am = factor(am, labels = c("auto", "man")),cyl = factor(cyl))
Teil on andmekogum valmis, saate graafiku koostada;
# 3. samm
ggplot(data, aes(x = cyl, fill = am)) +geom_bar() +theme_classic()
Koodi selgitus
- Ggpplot () sisaldab andmekogumi andmeid ja aes ().
- Aes () lisate muutuja x-telje ja millise muutuja on vaja riba täitmiseks (st am)
- geom_bar (): looge tulpdiagramm
Väljund:
Kaardistamine täidab riba kahe värviga, üks igale tasemele. Rühma muutmine on vaevatu, valides andmekogumisse muud teguritegurid.
Tulpdiagramm protsentides
Toorloenduse asemel saate riba visualiseerida protsentides.
# Tulpdiagramm protsentides
ggplot(data, aes(x = cyl, fill = am)) +geom_bar(position = "fill") +theme_classic()
Koodi selgitus
- Y-teljel protsentuaalse graafika loomiseks kasutage argumenti geom_bar () positsiooni = "fill".
Väljund:
Kõrvuti ribad
Tulpdiagrammi on lihtne joonistada rühma muutujaga kõrvuti.
# Bar chart side by sideggplot(data, aes(x = cyl, fill = am)) +geom_bar(position = position_dodge()) +theme_classic()
Koodi selgitus
- position = position_dodge (): ütleb selgesõnaliselt, kuidas ribasid korraldada
Väljund:
Histogramm
Tulpdiagrammi õpetuse teises osas saate esindada muutujate rühma, mille väärtused on y-teljel.
Teie eesmärk on luua graafik iga silindritüübi keskmise miili galloni kohta. Informatiivse graafiku joonistamiseks järgige neid samme:
- 1. samm: looge uus muutuja, mille keskmine miil galloni kohta on silinder
- 2. samm: looge põhihistogramm
- 3. samm: muutke suunda
- 4. samm: muutke värvi
- 5. samm: muutke suurust
- 6. samm: lisage graafikule sildid
1. samm. Looge uus muutuja
Loote andmeraami nimega data_histogram, mis tagastab keskmised miilid galloni kohta autos olevate silindrite arvu järgi. Nimetate seda uut muutujat mean_mpg ja ümardate keskmise kahe kümnendkohaga.
# Samm 1
data_histogram <- mtcars % > %mutate(cyl = factor(cyl)) % > %group_by(cyl) % > %summarize(mean_mpg = round(mean(mpg), 2))
2. samm. Looge põhiline histogramm
Saate histogrammi koostada. See pole veel valmis kliendile edastamiseks suhtlema, kuid annab meile intuitsiooni trendi kohta.
ggplot(data_histogram, aes(x = cyl, y = mean_mpg)) +geom_bar(stat = "identity")
Koodi selgitus
- Aesil () on nüüd kaks muutujat. Muutuja cyl tähistab x-telge ja keskmine_mpg on y-telg.
- Y-teljel oleva muutuja arvulise väärtusena viitamiseks peate edastama argumendi stat = "identity". geom_bar kasutab vaikeväärtusena stat = "bin".
Väljund:
Samm 3) Muutke suunda
Graafiku suuna muudate vertikaalsest horisontaalseks.
ggplot(data_histogram, aes(x = cyl, y = mean_mpg)) +geom_bar(stat = "identity") +coord_flip()
Koodi selgitus
- Graafi suunda saab juhtida coord_flip () abil.
Väljund:
4. samm. Muutke värvi
Ribade värve saab eristada vastavalt x-telje muutuja teguritasemele.
ggplot(data_histogram, aes(x = cyl, y = mean_mpg, fill = cyl)) +geom_bar(stat = "identity") +coord_flip() +theme_classic()
Koodi selgitus
- Graafiku saate koostada rühmade kaupa, kasutades kaardistust fill = cyl. R hoolitseb värvide eest automaatselt, muutes silindrimuutujaid
Väljund:
5. samm. Muutke suurust
Graafiku nägusamaks muutmiseks vähendate riba laiust.
graph <- ggplot(data_histogram, aes(x = cyl, y = mean_mpg, fill = cyl)) +geom_bar(stat = "identity",width = 0.5) +coord_flip() +theme_classic()
Koodi selgitus
- Laiuse argument geom_bar () sees kontrollib riba suurust. Suurem väärtus suurendab laiust.
- Pange tähele, et graafiku salvestate muutuja graafikusse. Teete seda, sest järgmine samm ei muuda muutuja graafiku koodi. See parandab koodi loetavust.
Väljund:
Samm 6) Lisage graafikule sildid
Viimane samm seisneb sildi muutuja mean_mpg väärtuse lisamises.
graph +geom_text(aes(label = mean_mpg),hjust = 1.5,color = "white",size = 3) +theme_classic()
Koodi selgitus
- Funktsioon geom_text () on kasulik teksti esteetika juhtimiseks.
- label =: lisage ribade sisse silt
- mean_mpg: sildi jaoks kasutage muutujat mean_mpg
- hjust kontrollib sildi asukohta. 1-ga suletud väärtustes kuvatakse riba ülaosas silt ja kõrgemad väärtused toovad sildi alla. Kui graafiku suund on vertikaalne, muutke hjust väärtuseks vjust.
- color = "white": muutke teksti värvi. Siin kasutate valget värvi.
- size = 3: määrake teksti suurus.
Väljund:
Kokkuvõte
Tulpdiagramm on kasulik, kui x-telg on kategooriline muutuja. Y-telg võib olla kas loendus- või kokkuvõtlik statistika. Allolevas tabelis on kokku võetud, kuidas juhtida graafikut ggplot2 abil:
Eesmärk |
kood |
---|---|
Krahv |
ggplot(df, eas(x= factor(x1)) + geom_bar() |
Loendage erinevat värvi täidisega |
ggplot(df, eas(x= factor(x1), fill = factor(x1))) + geom_bar() |
Lugege rühmade kaupa, virnastatud |
ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar(position=position_dodge()) |
Loe rühmadega, kõrvuti |
ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar() |
Rühmadega loendamine, laotud% |
ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar(position=position_dodge()) |
Väärtused |
ggplot(df, eas(x= factor(x1)+ y = x2) + geom_bar(stat="identity") |