Cara mengatur ulang batang dalam diagram batang bertumpuk di ggplot2


Anda dapat menggunakan sintaks dasar berikut untuk mengatur ulang posisi batang dalam diagram batang bertumpuk di ggplot2:

 #specify order of bars (from top to bottom)
df$fill_var <- factor(df$fill_var, levels=c(' value1 ', ' value2 ', ' value3 ', ...))

#create stacked bar chart
ggplot(df, aes(x=x_var, y=y_var, fill=fill_var)) + 
    geom_bar(position=' stack ', stat=' identity ')

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Menyusun ulang batang dalam diagram batang bertumpuk di ggplot2

Misalkan kita memiliki kerangka data berikut di R yang menunjukkan poin yang dicetak oleh pemain bola basket yang berbeda:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'),
                 position=c('G', 'F', 'C', 'G', 'F', 'C', 'G', 'F', 'C'),
                 points=c(22, 12, 10, 30, 12, 17, 28, 23, 20))

#view data frame
df

  team position points
1 AG 22
2 AF12
3 AC 10
4 BG 30
5 BF 12
6 BC 17
7 GC 28
8 CF 23
9 CC 20

Jika kita membuat diagram batang bertumpuk untuk memvisualisasikan poin yang dicetak oleh pemain di setiap tim, ggplot2 akan secara otomatis menumpuk batang tersebut sesuai urutan abjad:

 library (ggplot2)

#create stacked bar chart
ggplot(df, aes(x=team, y=points, fill=position)) + 
    geom_bar(position=' stack ', stat=' identity ') 

Perhatikan bahwa setiap batang bertumpuk menampilkan posisi (atas ke bawah) dalam urutan abjad.

Untuk mengatur ulang batang dengan cara tertentu, kita dapat mengonversi variabel posisi menjadi faktor dan menggunakan argumen level untuk menentukan urutan penempatan batang (dari atas ke bawah) dalam diagram batang bertumpuk:

 library (ggplot2)

#convert 'position' to factor and specify level order
df$position <- factor(df$position, levels=c(' F ', ' G ', ' C '))

#create stacked bar chart
ggplot(df, aes(x=team, y=points, fill=position)) + 
    geom_bar(position=' stack ', stat=' identity ') 

Batang-batang tersebut sekarang ditumpuk (dari atas ke bawah) sesuai urutan yang kita tentukan dalam argumen level .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di ggplot2:

Cara memutar label sumbu di ggplot2
Cara mengatur jeda sumbu di ggplot2
Cara menetapkan batas sumbu di ggplot2
Cara mengubah label legenda di ggplot2

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *