Jak dodać tabele do wykresów w ggplot2 (2 przykłady)
Często możesz chcieć dodać tabele do wykresów utworzonych w ggplot2 w R, aby czytelnicy mogli wizualizować surowe dane wraz z wykresem.
Na szczęście dodanie tabel do wykresów jest łatwe przy użyciu pakietu ggpmisc:
install. packages (' ggpmisc ')
library (ggpmisc)
Poniższe przykłady pokazują, jak używać tego pakietu do dodawania tabeli do wykresu słupkowego i wykresu rozrzutu przy użyciu następującej ramki danych:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'),
points=c(13, 23, 24, 20, 19, 14, 29, 31))
#view data frame
df
team position points
1 AG 13
2 AG 23
3 AF 24
4 AF 20
5 BG 19
6 BG 14
7 BF 29
8 BF 31
Przykład 1: Dodaj tabelę do Barplot w ggplot2
Możemy użyć poniższego kodu, aby utworzyć pogrupowany wykres słupkowy w ggplot2 i dodać tabelę w prawym dolnym rogu wykresu, aby wyświetlić rzeczywiste wartości ramki danych:
library (ggplo2) library (ggpmisc) #create barplot with table ggplot(df, aes(x=team, y=points, fill=position)) + geom_bar(position=' dodge ', stat=' identity ') + annotate(geom = ' table ', x=4, y=0, label=list(df))
Jeśli pracujesz z dużym zbiorem danych i nie chcesz wyświetlać poszczególnych wierszy, możesz użyć funkcji table() do podsumowania danych przed utworzeniem tabeli w ggplot2:
library (ggplot2) library (ggpmisc) #summarize frequencies of team and points in table my_table <- as. data . frame (table(df[, c(1, 3)])) #create barplot with table ggplot(df, aes(x=team, y=points, fill=position)) + geom_bar(position=' dodge ', stat=' identity ') + annotate(geom = ' table ', x=4, y=0, label=list(my_table))
Przykład 2: Dodaj tabelę do wykresu rozrzutu w ggplot2
Możemy użyć poniższego kodu, aby utworzyć wykres rozrzutu w ggplot2 i dodać tabelę w prawym dolnym rogu wykresu, aby wyświetlić rzeczywiste wartości z ramki danych:
library (ggplo2) library (ggpmisc) #create scatterplot with table ggplot(df, aes(x=team, y=points)) + geom_point(aes(color=position)) + annotate(geom=' table ', x=4, y=0, label=list(df))
Uwaga : możesz pobawić się wartościami x i y w funkcji annotate() , aby umieścić tablicę dokładnie w żądanym miejscu.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w ggplot2:
Jak dodać tekst do wykresów ggplot2
Jak zmienić pozycję tytułu w ggplot2
Jak zmienić kolejność elementów w legendzie ggplot2