Cara membuat histogram dengan warna berbeda di r


Seringkali Anda mungkin ingin membuat histogram dengan beberapa warna berbeda di R.

Contoh berikut menunjukkan cara melakukan ini di basis R dan ggplot2 .

Contoh 1: histogram dengan warna berbeda pada basis R

Kode berikut menunjukkan cara membuat histogram dengan satu warna di basis R:

 #create data frame
df <- data. frame (x=c(12, 14, 14, 15, 15, 17, 19, 22, 23, 23, 24))

#create histogram
hist(df$x)

Secara default, semua warna batang sama di histogram.

Namun, kita dapat menggunakan kode berikut untuk membuat histogram dengan tiga warna berbeda:

 #create data frame
df <- data. frame (x=c(12, 14, 14, 15, 15, 17, 19, 22, 23, 23, 24))

#define histogram break points
hist_breaks <- hist(df$x)$breaks

#define colors to use in histogram based on break points
color_list <- rep(' red ', length(hist_breaks))
color_list[hist_breaks < 20 ] <- ' blue '
color_list[hist_breaks < 16 ] <- ' purple '

#create histogram with custom colors
hist(df$x, col=color_list)

histogram dengan warna berbeda di R

Berikut cara kerja logika untuk menciptakan tiga warna:

  • Pertama, kami menentukan bahwa setiap batang berwarna merah .
  • Kemudian kami mengubah setiap bar dengan breakpoint kurang dari 20 menjadi biru .
  • Kemudian kami mengubah setiap bar dengan breakpoint kurang dari 16 menjadi ungu .

Hasil akhirnya adalah histogram tiga warna.

Contoh 2: Histogram dengan warna berbeda di ggplot2

Misalkan kita memiliki bingkai data berikut di R:

 #create data frame
df <- data. frame (x=c(12, 14, 14, 15, 15, 17, 19, 22, 23, 23, 24))

#view data frame
df

    x
1 12
2 14
3 14
4 15
5 15
6 17
7 19
8 22
9 23
10 23
11 24

Untuk membuat histogram dengan warna berbeda untuk bingkai data ini, pertama-tama kita perlu membuat variabel pengelompokan untuk nilai menggunakan pernyataan if else bersarang :

 #create grouping variable
df$group = ifelse(df$x < 16 , ' C ', ifelse(df$x < 20 , ' B ', ' A '))

#view updated data frame
df

    x group
1 12 C
2 14C
3 14C
4 15C
5 15C
6 17 B
7 19 B
8 22 A
9 23 A
10 23 A
11 24 A

Sekarang kita dapat membuat histogram di ggplot2 dan mengatur warna plot menggunakan variabel grup:

 #create histogram with custom colors
ggplot(df, aes(x, fill=group)) +
  geom_histogram(bins= 6 , color=' black ') +
   scale_fill_manual(values = c(' A ' = ' red ',
                                ' B ' = ' blue ',
                                ' C ' = ' purple '))

Hasil akhirnya adalah histogram tiga warna.

Catatan : Anda dapat menemukan dokumentasi lengkap untuk scale_fill_manual() di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di R:

Cara membuat histogram frekuensi relatif di R
Cara melapisi kurva normal pada histogram di R
Cara menentukan jeda histogram di R

Tambahkan komentar

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