Cara mengelompokkan berdasarkan dua kolom di ggplot2 (dengan contoh)


Anda dapat menggunakan sintaks dasar berikut untuk mengelompokkan berdasarkan dua kolom saat membuat plot di ggplot2:

 ggplot(df, aes(x=var1, y=var2, color=var3, shape=var4,
       group=interaction(var3, var4))) + 
  geom_point() +
  geom_line()

Kode khusus ini menghasilkan plot linier di mana titik-titik dikelompokkan berdasarkan kolom var3 dan var4 dalam bingkai data.

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: mengelompokkan berdasarkan dua kolom di ggplot2

Misalkan kita memiliki kerangka data berikut di R yang menunjukkan total penjualan selama beberapa minggu di dua toko berbeda ketika dua promosi berbeda dijalankan:

 #create data frame
df <- data. frame (store=rep(c(' A ', ' B '), each= 8 ),
                 promo=rep(c(' Promo 1 ', ' Promo 2 '), each= 4 , times= 2 ),
                 week=rep(c(1:4), times= 4 ),
                 sales=c(1, 2, 6, 7, 2, 3, 5, 6, 3, 4, 7, 8, 3, 5, 8, 9))

#view data frame
df

   store promo week sales
1 A Promo 1 1 1
2 A Promo 1 2 2
3 A Promo 1 3 6
4 A Promo 1 4 7
5 A Promo 2 1 2
6 A Promo 2 2 3
7 A Promo 2 3 5
8 A Promo 2 4 6
9 B Promo 1 1 3
10 B Promo 1 2 4
11 B Promo 1 3 7
12 B Promo 1 4 8
13 B Promo 2 1 3
14 B Promo 2 2 5
15 B Promo 2 3 8
16 B Promo 2 4 9

Kita dapat menggunakan kode berikut untuk membuat diagram garis di ggplot2 yang nilai datanya dikelompokkan berdasarkan kolom toko dan promosi :

 library (ggplot2)

#create line plot with values grouped by store and promo
ggplot(df, aes(x=week, y=sales, color=store, shape=promo,
               group=interaction(store, promo))) + 
  geom_point(size= 3 ) +
  geom_line()

grup ggplot dengan dua kolom

Hasilnya adalah diagram garis yang setiap barisnya mewakili nilai penjualan untuk setiap kombinasi toko dan promosi .

Secara khusus, empat baris mewakili nilai penjualan untuk kombinasi berikut:

  • Promo 1 di toko A
  • Promo 2 di toko A
  • Promo 1 di toko B
  • Promo 1 di toko B

Dua legenda di sisi plot menunjukkan garis mana yang mewakili kombinasi mana.

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 *