Bắt đầu ngayBắt đầu miễn phí

“Mưa” dữ liệu (rải điểm)

Mức độ hai đỉnh tăng lên vào đầu tuần có thể khá thuyết phục, nhưng trước khi kết luận, bạn nên vẽ từng điểm bên dưới các đường mật độ để xem KDE đang nội suy như thế nào.

Trong mã đã có từ các bài trước, chúng ta thêm một hình học điểm để làm việc này. Bạn sẽ thấy kết quả chưa đẹp lắm. Để cải thiện, ta sẽ làm vài việc…

Đầu tiên, giảm nhẹ alpha của điểm để nhìn được phần chồng lắp. Thứ hai, chuyển dạng điểm sang các vạch dọc kiểu geom_rug() ('|').

Ở bước này, nếu bạn chạy mã, bạn sẽ thấy các điểm bị “cắt” khó chịu vào hình mật độ. Ta cần “đẩy” (nudge) các vạch đánh dấu xuống một chút theo trục y. Để làm vậy, dùng tham số position cùng hàm hỗ trợ position_nudge().

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

Xem khóa học

Hướng dẫn bài tập

  • Giảm alpha của các điểm xuống 0.2 để thể hiện phần chồng lắp.
  • Đổi shape của điểm thành '|' để sử dụng không gian hiệu quả hơn.
  • Đẩy các điểm xuống để không đè lên hình mật độ với position = position_nudge(y = -0.05).

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.

md_speeding %>% 
    mutate(day_of_week = factor(day_of_week, levels = c("Mon","Tues","Wed","Thu","Fri","Sat","Sun") )) %>% 
    ggplot(aes( x = percentage_over_limit, y = day_of_week)) + 
    geom_point(
        # make semi-transparent with alpha = 0.2
        # turn points to vertical lines with shape = '|'
        # nudge the points downward by 0.05
    ) +
    geom_density_ridges(bandwidth = 3.5, alpha = 0.7) +
    scale_x_continuous(limits = c(0,150), expand  = c(0,0)) +
    labs(subtitle = 'Guassian kernel SD = 3.5') +
    theme( axis.ticks.y = element_blank() )
Chỉnh sửa và Chạy Mã