Cara membuat gantt chart di r menggunakan ggplot2


Bagan Gantt adalah jenis bagan yang menunjukkan waktu mulai dan berakhirnya berbagai peristiwa.

Tutorial ini menjelaskan cara membuat diagram Gantt di R menggunakan paket ggplot2 .

Membuat bagan Gantt di R menggunakan ggplot2

Katakanlah kita memiliki kumpulan data berikut yang menunjukkan waktu mulai dan berakhirnya empat shift pekerja berbeda di sebuah toko:

 #create data frame
data <- data.frame(name = c('Bob', 'Greg', 'Mike', 'Andy'), 
start = c(4, 7, 12, 16),
end = c(12, 11, 8, 22),
shift_type = c('early', 'mid_day', 'mid_day', 'late')
)
data

# name start end shift_type
#1 Bob 4 12 early
#2 Greg 7 11 mid_day
#3 Mike 12 8 mid_day
#4 Andy 16 22 late

Untuk membuat diagram Gantt menggunakan ggplot2 yang memvisualisasikan waktu mulai dan selesai setiap pekerja, kita dapat menggunakan kode berikut:

 #install (if not already installed) and load ggplot2
if(!require(ggplot2)){install.packages('ggplot2')}

#create gantt chart that visualizes start and end time for each worker
ggplot(data, aes(x=start, xend=end, y=name, yend=name, color=shift_type)) +
  geom_segment()

Ini menghasilkan bagan Gantt berikut:

Dengan beberapa penyesuaian pada tata letaknya, kita dapat membuat bagan Gantt ini terlihat jauh lebih baik:

 ggplot(data, aes(x=start, xend=end, y=name, yend=name, color=shift_type)) +
theme_bw()+ #use ggplot theme with black gridlines and white background
geom_segment(size=8) + #increase line width of segments in the chart
labs(title='Worker Schedule', x='Time', y='Worker Name')

Ini menghasilkan grafik berikut:

Selain itu, jika Anda ingin mengatur warna yang tepat untuk digunakan dalam bagan, Anda dapat menggunakan kode berikut:

 ggplot(data, aes(x=start, xend=end, y=name, yend=name, color=shift_type)) +
  theme_bw()+ #use ggplot theme with black gridlines and white background
  geom_segment(size=8) + #increase line width of segments in the chart
  labs(title='Worker Schedule', x='Time', y='Worker Name') +
  scale_color_manual(values = c('pink', 'purple', 'blue'))

Ini menghasilkan grafik berikut dengan warna merah muda, ungu, dan biru untuk mewakili jenis pergeseran yang berbeda:

Gunakan tema khusus

Kita dapat melangkah lebih jauh dengan menggunakan tema khusus dari perpustakaan ggthemes .

Misalnya, kita dapat membuat bagan Gantt yang menggunakan tema yang terinspirasi dari Wall Street Journal:

 #load ggthemes library
library(ggthemes)

#create scatterplot with Wall Street Journal theme
ggplot(data, aes(x=start, xend=end, y=name, yend=name, color=shift_type)) +
  theme_bw()+
  geom_segment(size=8) +
  labs(title='Worker Schedule', x='Time', y='Worker Name') +
  scale_color_manual(values = c('pink', 'purple', 'blue')) +
  theme_wsj() + 
  theme(axis.title = element_text())

Atau kita bisa menggunakan tema yang terinspirasi oleh The Economist:

 ggplot(data, aes(x=start, xend=end, y=name, yend=name, color=shift_type)) +
  theme_bw()+
  geom_segment(size=8) +
  labs(title='Worker Schedule', x='Time', y='Worker Name') +
  scale_color_manual(values = c('pink', 'purple', 'blue')) +
  theme_economist() + 
  theme(axis.title = element_text())

Atau mungkin tema yang terinspirasi dari Lima Tiga Puluh Delapan :

 ggplot(data, aes(x=start, xend=end, y=name, yend=name, color=shift_type)) +
  theme_bw()+
  geom_segment(size=8) +
  labs(title='Worker Schedule', x='Time', y='Worker Name') +
  scale_color_manual(values = c('pink', 'purple', 'blue')) +
  theme_fivethirtyeight() + 
  theme(axis.title = element_text())

Untuk daftar lengkap tema yang tersedia di perpustakaan ggthemes , lihat halaman dokumentasi .

Tambahkan komentar

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