Mengoptimalkan plot untuk perangkat seluler
Judul sumbu-x sebenarnya sudah cukup berlebihan karena Anda telah menambahkan label untuk kedua tahun. Anda sekarang akan menambahkan label negara ke plot, sehingga semua sumbu dapat dihapus.
Dalam latihan ini, Anda akan menemui sesuatu yang mungkin baru bagi Anda: Himpunan data baru dapat diberikan ke geometri tertentu seperti geom_text(), sehingga geometri tersebut tidak menggunakan himpunan data yang diberikan pada pemanggilan awal ggplot(). Dalam latihan ini, Anda memerlukannya karena Anda hanya ingin menambahkan satu label pada setiap panah. Jika Anda menggunakan himpunan data asli ilo_data, dua label akan ditambahkan karena ada dua observasi untuk setiap negara dalam himpunan data, satu untuk 1996 dan satu untuk 2006.
Latihan ini adalah bagian dari kursus
Berkomunikasi dengan Data di Tidyverse
Petunjuk latihan
- Himpunan data baru
median_working_hourstelah dibuat sehingga hanya ada satu label per negara. Lihat strukturnya denganstr(). - Gunakan
median_working_hourssebagai argumendatadalam pemanggilangeom_text()yang baru, untuk menambahkan label bagi setiap negara.- Tentukan estetika yang diperlukan untuk
geom_text()dengan benar:xdanlabelyang harus mengarah ke variabel yang tepat dalam himpunan datamedian_working_hours.
- Tentukan estetika yang diperlukan untuk
- Hapus semua sumbu dan kisi latar belakang dengan menetapkan fungsi
element_blank()untuk semua argumenaxis.danpanel.griddalam pemanggilantheme()kustom. - Setelah menjalankan kode akhir, ubah ukuran jendela plot di sebelah kanan untuk mensimulasikan layar perangkat seluler dalam mode potret (sempit dan tinggi) – semua label akan pas di area tampilan plot.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Compute temporary data set for optimal label placement
median_working_hours <- ilo_data %>%
group_by(country) %>%
summarize(median_working_hours_per_country = median(working_hours)) %>%
ungroup()
# Have a look at the structure of this data set
___
ilo_dot_plot +
# Add label for country
geom_text(data = ___,
aes(y = country,
x = ___,
label = ___),
vjust = 2,
family = "Bookman",
color = "gray25") +
# Remove axes and grids
theme(
axis.ticks = ___,
axis.title = ___,
axis.text = ___,
panel.grid = ___,
# Also, let's reduce the font size of the subtitle
plot.subtitle = element_text(size = 9)
)