Cara mengurutkan batang di diagram batang ggplot2
Secara default, ggplot2 menyusun batang dalam diagram batang dengan urutan berikut:
- Variabel faktor diklasifikasikan berdasarkan tingkat faktor.
- Variabel karakter dicantumkan berdasarkan abjad.
Namun, Anda mungkin sering tertarik untuk memesan batangan dalam urutan tertentu.
Tutorial ini menjelaskan cara melakukan ini menggunakan bingkai data berikut:
#create data frame df <- data. frame (team = c('B', 'B', 'B', 'A', 'A', 'C'), points = c(12, 28, 19, 22, 32, 45), rebounds = c(5, 7, 7, 12, 11, 4)) #view structure of data frame str(df) 'data.frame': 6 obs. of 3 variables: $ team: Factor w/ 3 levels "A","B","C": 2 2 2 1 1 3 $ points: num 12 28 19 22 32 45 $rebounds: num 5 7 7 12 11 4
Contoh 1: Urutkan batang berdasarkan urutan faktor tertentu
Jika kita mencoba membuat diagram batang untuk menampilkan frekuensi berdasarkan tim, batang tersebut secara otomatis akan muncul dalam urutan abjad:
library (ggplot2) ggplot(df, aes(x=team)) + geom_bar ()
Kode berikut menunjukkan cara mengurutkan batang dalam urutan tertentu:
#specify factor level order df$team = factor(df$team, levels = c('C', 'A', 'B')) #create bar chart again ggplot(df, aes(x=team)) + geom_bar ()
Contoh 2: Urutan bilah berdasarkan nilai numerik
Kita juga dapat mengurutkan batang berdasarkan nilai numerik. Misalnya, kode berikut menunjukkan cara mengurutkan bilah dari frekuensi tertinggi hingga terendah menggunakan fungsi reorder() :
library (ggplot2) ggplot(df, aes(x= reorder (team, team, function (x)-length(x)))) + geom_bar ()
Kita juga dapat mengurutkan bar dari frekuensi terkecil hingga terbesar dengan menghilangkan tanda minus pada pemanggilan function() pada fungsi reorder() :
library (ggplot2) ggplot(df, aes(x= reorder (team, team, function (x) length(x)))) + geom_bar ()
Sumber daya tambahan
Dokumentasi untuk fungsi geom_bar() .
Dokumentasi untuk fungsi reorder() .
Daftar lengkap tutorial R tentang statistik.