Độ rộng bin theo ngữ cảnh
Đoạn mã đã cho đang xem phân phối số biên bản phạt theo từng giờ trong ngày. Hãy để ý các cột không khớp gọn với mốc từng giờ; điều này khiến việc diễn giải chiều cao cột hơi khó chịu. Khi dữ liệu của bạn có các điểm gãy tự nhiên như vậy, bạn nên tận dụng chúng. Trong trường hợp này, ta có thể đặt các điểm chia rơi đúng vào ranh giới các giờ.
Hãy chỉnh geom_histogram() để đặt binwidth bằng 1 giờ. Tuy nhiên, đối số này không cho ggplot biết nên bắt đầu các bin từ đâu; mặc định nó được xác định bởi phạm vi dữ liệu. Để khắc phục, đặt đối số center thành 0.5. Điều này nghĩa là bạn muốn một trong các cột được căn giữa tại mốc 30 phút sau nửa đêm, và ggplot sẽ sắp xếp các cột còn lại tương ứng. (Bạn có thể đặt thành bất kỳ giờ + 0.5 nào, như 2.5, 3.5, v.v.)
Bài tập này là một phần của khóa học
Thực hành tốt nhất về trực quan hóa trong R
Hướng dẫn bài tập
- Đặt
binwidthcủa biểu đồ thành 1. - Căn giữa các cột tại mốc nửa giờ bằng đối số
center.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
ggplot(md_speeding,aes(x = hour_of_day)) +
geom_histogram(
___ # set binwidth to 1
___ # Center bins at the half (0.5) hour
) +
scale_x_continuous(breaks = 0:24)