Palični grafikon je odličen način za prikaz kategoričnih spremenljivk v osi x. Ta vrsta grafa označuje dva vidika v osi y.
- Prva šteje število pojavitev med skupinami.
- Drugi prikazuje povzetek statističnih podatkov (min, max, povprečje itd.) Spremenljivke na osi y.
Uporabili boste nabor podatkov mtcars z naslednjimi spremenljivkami:
- cilinder: številka cilindra v avtomobilu. Številska spremenljivka
- am: Vrsta prenosa. 0 za samodejno in 1 za ročno. Številska spremenljivka
- mpg: milj na galono. Številska spremenljivka
V tej vadnici boste izvedeli
- Kako ustvariti palični grafikon
- Spremenite barvo palic
- Spremenite intenzivnost
- Barvanje po skupinah
- Dodajte skupino v vrstice
- Palični grafikon v odstotkih
- Vzporedne palice
- Histogram
Kako ustvariti palični grafikon
Če želite ustvariti graf v R, lahko uporabite knjižnico ggplot, ki ustvari pripravljene za objavo grafe. Osnovna sintaksa te knjižnice je:
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()`
V tej vadnici vas zanima geometrijski objekt geom_bar (), ki ustvarja palični grafikon.
Palični grafikon: štetje
Vaš prvi graf prikazuje frekvenco valja z geom_bar (). Spodnja koda je najosnovnejša sintaksa.
library(ggplot2)# Most basic bar chartggplot(mtcars, aes(x = factor(cyl))) +geom_bar()
Razlaga kode
- Podatkovni niz mtcars posredujete ggplot.
- Znotraj argumenta aes () dodate os x kot spremenljivko faktorja (cyl)
- Znak + pomeni, da želite, da R še naprej bere kodo. Kodo naredi bolj berljivo tako, da jo zlomi.
- Za geometrijski objekt uporabite geom_bar ().
Izhod:
Opomba : spremenljivke pretvorite v faktor, sicer R spremenljivke obravnava kot številske. Glej spodnji primer.
Prilagodite graf
Za prilagoditev grafa lahko posredujete štiri argumente:
- `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
Spremenite barvo palic
Barvo palic lahko spremenite. Upoštevajte, da so barve palic podobne.
# Change the color of the barsggplot(mtcars, aes(x = factor(cyl))) +geom_bar(fill = "coral") +theme_classic()
Razlaga kode
- Barve stolpcev nadzoruje preslikava aes () znotraj geometrijskega predmeta (tj. Ne v ggplot ()). Barvo lahko spremenite z argumenti za polnjenje. Tu izberete koralno barvo.
Izhod:
Uporabite lahko to kodo:
grDevices::colors()
da si ogledate vse barve, ki so na voljo v R. Obstaja približno 650 barv.
Spremenite intenzivnost
Intenzivnost barve palic lahko povečate ali zmanjšate
# Change intensityggplot(mtcars,aes(factor(cyl))) +geom_bar(fill = "coral",alpha = 0.5) +theme_classic()
Razlaga kode
- Če želite povečati / zmanjšati intenzivnost vrstice, lahko spremenite vrednost alfa. Velika alfa poveča intenzivnost, nizka pa intenzivnost. alfa se giblje od 0 do 1. Če je 1, je barva enaka paleti. Če je 0, je barva bela. Izberete alfa = 0,1.
Izhod:
Barvanje po skupinah
Barve stolpcev lahko spremenite, kar pomeni, da je za vsako skupino ena drugačna barva. Na primer, spremenljivka cyl ima tri ravni, nato lahko stolpčni grafikon narišete s tremi barvami.
# Color by groupggplot(mtcars, aes(factor(cyl),fill = factor(cyl))) +geom_bar()
Razlaga kode
- Argument fill znotraj aes () omogoča spreminjanje barve vrstice. Barvo spremenite tako, da nastavite spremenljivko fill = x-axis. V vašem primeru je spremenljivka osi x cil; zapolnitev = faktor (cil.)
Izhod:
Dodajte skupino v vrstice
Os y lahko nadalje razdelite na podlagi druge stopnje faktorja. Na primer, lahko preštejete število samodejnega in ročnega menjalnika glede na vrsto valja.
Nadaljevali boste, kot sledi:
- 1. korak: Ustvarite podatkovni okvir z naborom podatkov mtcars
- 2. korak: Spremenljivko am označite s samodejnim za samodejni menjalnik in man za ročni menjalnik. Pretvorite am in cyl kot faktor, tako da vam v funkciji ggplot () ni treba uporabljati faktorja ().
- 3. korak: Narišite stolpčni grafikon, da preštejete število prenosov po valjih
library(dplyr)# Step 1data <- mtcars % > %#Step 2mutate(am = factor(am, labels = c("auto", "man")),cyl = factor(cyl))
Pripravili ste nabor podatkov, lahko izrišete graf;
# 3. korak
ggplot(data, aes(x = cyl, fill = am)) +geom_bar() +theme_classic()
Razlaga kode
- Ggpplot () vsebuje podatke nabora podatkov in aes ().
- V aes () vključite spremenljivko x-os in katero spremenljivko potrebujete za zapolnitev vrstice (tj. Am)
- geom_bar (): Ustvari stolpčni grafikon
Izhod:
Preslikava bo vrstico zapolnila z dvema barvama, po eno za vsako stopnjo. Skupino je enostavno spremeniti z izbiro drugih spremenljivk faktorja v naboru podatkov.
Palični grafikon v odstotkih
Vrstico lahko vizualizirate v odstotkih namesto v številu surovih snovi.
# Palični grafikon v odstotkih
ggplot(data, aes(x = cyl, fill = am)) +geom_bar(position = "fill") +theme_classic()
Razlaga kode
- Uporabite position = "fill" v argumentu geom_bar (), da ustvarite grafiko z odstotkom na osi y.
Izhod:
Vzporedne palice
Črtni grafikon je enostavno narisati s spremenljivko skupine vzporedno.
# Bar chart side by sideggplot(data, aes(x = cyl, fill = am)) +geom_bar(position = position_dodge()) +theme_classic()
Razlaga kode
- position = position_dodge (): Izrecno pove, kako urediti palice
Izhod:
Histogram
V drugem delu vadnice z grafikoni lahko predstavite skupino spremenljivk z vrednostmi na osi y.
Vaš cilj je ustvariti graf s povprečno miljo na galono za vsako vrsto jeklenke. Če želite narisati informativni graf, sledite tem korakom:
- 1. korak: Ustvarite novo spremenljivko s povprečno miljo na galono po valju
- 2. korak: Ustvarite osnovni histogram
- 3. korak: spremenite usmeritev
- 4. korak: Spremenite barvo
- 5. korak: Spremenite velikost
- 6. korak: Na graf dodajte oznake
Korak 1) Ustvarite novo spremenljivko
Ustvarite podatkovni okvir z imenom data_histogram, ki preprosto vrne povprečne kilometre na galono s številom valjev v avtomobilu. To novo spremenljivko pokličete mean_mpg in srednjo vrednost zaokrožite z dvema decimalnima mestoma.
# Korak 1
data_histogram <- mtcars % > %mutate(cyl = factor(cyl)) % > %group_by(cyl) % > %summarize(mean_mpg = round(mean(mpg), 2))
Korak 2) Ustvarite osnovni histogram
Lahko narišete histogram. Ni pripravljen za komunikacijo, da bi bil dostavljen stranki, daje pa nam intuicijo o trendu.
ggplot(data_histogram, aes(x = cyl, y = mean_mpg)) +geom_bar(stat = "identity")
Razlaga kode
- Aes () ima zdaj dve spremenljivki. Spremenljivka cilindra se nanaša na os x, srednja_mpg pa je os y.
- Če želite spremenljivko na osi y posredovati kot številčno vrednost, morate predati argument stat = "identity". geom_bar kot privzeto vrednost uporablja stat = "bin".
Izhod:
Korak 3) Spremenite usmeritev
Usmeritev grafa spremenite iz navpične v vodoravno.
ggplot(data_histogram, aes(x = cyl, y = mean_mpg)) +geom_bar(stat = "identity") +coord_flip()
Razlaga kode
- Usmerjenost grafa lahko nadzorujete s koordinacijo_flip ().
Izhod:
Korak 4) Spremenite barvo
Barve stolpcev lahko razlikujete glede na faktor faktorja spremenljivke osi x.
ggplot(data_histogram, aes(x = cyl, y = mean_mpg, fill = cyl)) +geom_bar(stat = "identity") +coord_flip() +theme_classic()
Razlaga kode
- Graf lahko narišete po skupinah s preslikavo fill = cyl. R samodejno skrbi za barve glede na nivoje variabilnosti cilindra
Izhod:
5. korak) Spremenite velikost
Da bo graf videti lepši, zmanjšajte širino vrstice.
graph <- ggplot(data_histogram, aes(x = cyl, y = mean_mpg, fill = cyl)) +geom_bar(stat = "identity",width = 0.5) +coord_flip() +theme_classic()
Razlaga kode
- Argument širine znotraj geom_bar () nadzoruje velikost vrstice. Večja vrednost poveča širino.
- Opomba: graf shranite v spremenljivi graf. To storite, ker naslednji korak ne bo spremenil kode spremenljivke grafa. Izboljša berljivost kode.
Izhod:
Korak 6) Na graf dodajte oznake
Zadnji korak sestoji iz dodajanja vrednosti spremenljivke mean_mpg v oznako.
graph +geom_text(aes(label = mean_mpg),hjust = 1.5,color = "white",size = 3) +theme_classic()
Razlaga kode
- Funkcija geom_text () je uporabna za nadzor estetike besedila.
- label =: Dodajte oznako znotraj stolpcev
- mean_mpg: Za oznako uporabite spremenljivko mean_mpg
- hjust nadzoruje lokacijo nalepke. Vrednosti, zaprte na 1, prikažejo oznako na vrhu vrstice, višje vrednosti pa pripeljejo oznako na dno. Če je usmerjenost grafa navpična, spremenite hjust v vjust.
- color = "white": spremenite barvo besedila. Tukaj uporabljate belo barvo.
- velikost = 3: nastavite velikost besedila.
Izhod:
Povzetek
Palični grafikon je uporaben, če je os x kategorična spremenljivka. Os y je lahko štetje ali zbirna statistika. Spodnja tabela povzema, kako krmilni grafikon nadzorujete z ggplot2:
Cilj |
Koda |
---|---|
Štetje |
ggplot(df, eas(x= factor(x1)) + geom_bar() |
Štejte z različno barvo polnila |
ggplot(df, eas(x= factor(x1), fill = factor(x1))) + geom_bar() |
Štejte s skupinami, zložene |
ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar(position=position_dodge()) |
Štejte s skupinami, drug ob drugem |
ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar() |
Štetje s skupinami, zložene v% |
ggplot(df, eas(x= factor(x1), fill = factor(x2))) + geom_bar(position=position_dodge()) |
Vrednote |
ggplot(df, eas(x= factor(x1)+ y = x2) + geom_bar(stat="identity") |