4.1 MiB
4.1 MiB
Wizualizacja danych
3-6. Biblioteka ggplot2 [laboratoria]
Tomasz Górecki (2021)
library(repr) # To resize plots in Jupyter
options(repr.plot.width = 16, repr.plot.height = 9)
library(ggplot2)
library(grid) # For multiplots
library(gridExtra) # For multiplots
library(ggthemes) # Additinal themes
library(PogromcyDanych) # Library with data sets
setLang(lang = 'eng') # Change language to English for data sets from PogromcyDanych
Ładowanie wymaganego pakietu: dplyr Dołączanie pakietu: ‘dplyr’ Następujący obiekt został zakryty z ‘package:gridExtra’: combine Następujące obiekty zostały zakryte z ‘package:stats’: filter, lag Następujące obiekty zostały zakryte z ‘package:base’: intersect, setdiff, setequal, union Ładowanie wymaganego pakietu: SmarterPoland Ładowanie wymaganego pakietu: httr Ładowanie wymaganego pakietu: htmltools
Biblioteka ggplot2
Pakiet _ggplot2 jest jednym z najbardziej zaawansowanych narzędzi do tworzenia wykresów statystycznych. Oznacza to, że konstrukcja pakietu jest na tyle elastyczna, że można z nim wykonać praktycznie każdą grafikę statystyczną.
Karty pomocy
Przykłady
Wykres punktowy
ggplot(cats_birds, aes(x = weight, y = speed)) +
geom_point() # Basic ggplot
ggplot(cats_birds, aes(x = weight, y = speed, shape = group)) +
geom_point(size = 5) # With different shapes
ggplot(cats_birds, aes(x = weight, y = speed, size = group)) +
geom_point() # With different sizes
Warning message: “Using size for a discrete variable is not advised.”
ggplot(cats_birds, aes(x = weight, y = speed, color = group)) +
geom_point(size = 5) # With different colors
ggplot(cats_birds, aes(x = weight, y = speed, shape = group, color = habitat)) +
geom_point(size = 5) # Combined different shapes and colors
Dodawanie tekstu do wykresu
ggplot(cats_birds, aes(x = weight, y = speed, label = species)) +
geom_text(hjust = 0) +
xlim(0, 350) # With text
ggplot(cats_birds, aes(x = weight, y = speed, label = species, color = group)) +
geom_text(hjust = -0.1) +
geom_point() +
xlim(0, 350) # Two geometries
ggplot(cats_birds, aes(x = weight, y = speed, label = species)) +
geom_text(hjust = -0.1, aes(color = group)) +
geom_point() +
xlim(0, 350) # Local aesthetic
Wykres liniowy i wykres typu "wstążka"
head(WIG)
Date | Name | Opening Price | Max Price | Min Price | Closing Price | Change | Turnover | |
---|---|---|---|---|---|---|---|---|
<date> | <fct> | <dbl> | <dbl> | <dbl> | <dbl> | <dbl> | <dbl> | |
1 | 2013-12-02 | WIG | 54627 | 54790 | 53935 | 53935 | -1.41 | 640784 |
2 | 2013-12-03 | WIG | 54026 | 54026 | 53250 | 53277 | -1.22 | 914148 |
3 | 2013-12-04 | WIG | 53222 | 53285 | 52536 | 52867 | -0.77 | 968047 |
4 | 2013-12-05 | WIG | 52837 | 52900 | 52575 | 52597 | -0.51 | 808039 |
5 | 2013-12-06 | WIG | 52838 | 52899 | 52513 | 52728 | 0.25 | 1012872 |
6 | 2013-12-09 | WIG | 53113 | 53187 | 52881 | 52881 | 0.29 | 599884 |
ggplot(WIG, aes(x = Date, y = `Closing Price`)) +
geom_line() # Line geometry
Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>”
ggplot(WIG, aes(x = Date,
ymin = 52000,
ymax = `Closing Price`)) +
geom_ribbon() # Ribbon geometry
Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>” Warning message in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <c5>” Warning message in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, : “niepowodzenie konwersji 'paź 2014' w 'mbcsToSbcs': kropka zastąpiona <ba>”