Kompletny przewodnik po najlepszych motywach ggplot2
Ten samouczek zawiera kompletny przewodnik po najlepszych motywach ggplot2, w tym:
- Jak zmienić wygląd działek za pomocą wbudowanych motywów ggplot2.
- Jak zmienić wygląd wykresów za pomocą predefiniowanych motywów z biblioteki ggthemes .
- Jak edytować określone elementy motywu, w tym tło panelu ścieżki i linie siatki.
Jak zmienić wygląd fabuły za pomocą wbudowanych motywów ggplot2
W każdym z poniższych przykładów użyjemy tęczówki z osadzonego zbioru danych R:
#view first six rows of iris dataset
head(iris)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
Najpierw załadujemy bibliotekę ggplot2 i utworzymy wykres rozproszenia przedstawiający Sepal.Length na osi X i Sepal.Width na osi Y, pokolorowane według gatunków:
#load ggplot2 library library(ggplot2) #create scatterplot ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + geom_point()
Następnie pokażemy, jak każdy z wbudowanych motywów ggplot2 wpływa na wygląd fabuły.
szary_motyw
Domyślny motyw z szarym tłem i białą siatką.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_gray()
bw_motyw
Motyw czarno-biały.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_bw()
motyw_liniowy
Motyw zawierający tylko czarne linie o różnej szerokości na białym tle.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_linedraw()
światło_motywu
Motyw podobny do motywu_linedraw , ale z szarymi liniami i osiami zaprojektowanymi w celu zwrócenia większej uwagi na dane.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_light()
ciemny schemat
Motyw podobny do motywu_światła , ale z ciemnym tłem. Przydatny motyw do podkreślania delikatnych kolorowych linii.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_dark()
minimalny_motyw
Motyw bez adnotacji w tle.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_minimal()
klasyczny_motyw
Motyw bez siatek.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_classic()
motyw_void
Kompletnie pusty temat.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_void()
Jak zmienić wygląd wykresów za pomocą predefiniowanych motywów z biblioteki ggthemes
Oprócz wykorzystania wbudowanych motywów ggplot2, możemy wykorzystać predefiniowane motywy z biblioteki ggthemes do zmiany estetyki działek.
Najpierw załadujemy bibliotekę ggthemes:
library(ggthemes)
Następnie pokażemy kilka przykładów wykorzystania predefiniowanych motywów do modyfikacji estetyki działek:
temat_wsj
Temat z „Wall Street Journal”.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_wsj()
temat_tufte
Minimalistyczny motyw inspirowany twórczością statystyka Edwarda Tufte.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_tufte()
solarized_theme
Motyw wykorzystujący kolory oparte na palecie Solarized .
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_solarized()
Zauważ, że możemy również użyć argumentu światło = FAŁSZ , aby użyć ciemnego tła na wykresie:
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_solarized( light = FALSE )
motyw_gdocs
Motyw z domyślnymi ustawieniami Wykresów Dokumentów Google.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_gdocs()
motyw_pięćtrzydzieści osiem
Motyw inspirowany fabułami fivethirtyeight.com .
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_fivethirtyeight()
temat_ekonomista
Motyw inspirowany The Economist.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme_economist()
Jak edytować określone elementy działek
Możemy użyć funkcji topic() i element_rect() do zmiany koloru tła panelu wykresu:
theme(panel.background = element_rect(fill, color, size))
- fill: kolor wypełnienia prostokąta
- kolor: kolor obramowania
- rozmiar: rozmiar obramowania
Możemy także użyć funkcji element_line() do zmiany rozmiaru i wyglądu siatki:
theme(panel.grid.major = element_line(color, size, linetype), panel.grid.minor = element_line(color, size, linetype))
- kolor: kolor obramowania
- rozmiar: rozmiar obramowania
- rodzaj linii: rodzaj linii („pusta”, „pełna”, „kreska”, „kropkowana”, „kropka kreskowa”, „długa kreska”, „dwie kreski”)
Poniższy kod ilustruje sposób usuwania obramowań i linii siatki panelu wydruku:
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point() +
theme(panel.border = element_blank(),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank())
Poniższy kod ilustruje sposób zmiany tła i linii siatki panelu wykresu:
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + geom_point() + theme( panel.background = element_rect(fill = "powderblue", color = "powderblue", size = 0.5, linetype = "solid"), panel.grid.major = element_line(size = 0.5, linetype = 'solid', color = "white"), panel.grid.minor = element_line(size = 0.25, linetype = 'solid', color = "white") )