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

Tự động tạo biểu đồ phân mảnh (faceting)

Trong bài trước, bạn đã tự tạo một biểu đồ phân tán có phân mảnh (faceted scatterplot). Việc này không quá mất công vì bạn chỉ tập trung vào hai nhóm. Tuy nhiên, có 6 nền tảng (platform) trong tập dữ liệu vgsales2016, và sẽ rất tốn công nếu phải viết tay 6 biểu đồ phân tán.

Trong bài này, bạn sẽ luyện tập dùng group_by(), nest(), mutate(), và map2() để tự động hóa việc tạo biểu đồ phân tán có phân mảnh theo mẫu sau:

data %>%
  group_by(factor) %>%
  nest() %>%
  mutate(
      plot = map2(data, factor,
        \(data, factor) 
            plot_ly(data = data, x = ~x, y = ~y) %>%
                  add_markers(name = ~factor)
    )) %>%
  subplot(nrows = R, shareY = TRUE, shareX = TRUE)

Bài tập này là một phần của khóa học

Trực quan hóa dữ liệu tương tác với plotly trong R

Xem khóa học

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

  • Dùng group_by(), nest(), mutate(), và map2() để tạo một biểu đồ phân tán có phân mảnh, với Critic_Score trên trục x và User_Score trên trục y, trong đó các mảnh (facets) được xác định bởi Platform.
  • Sắp xếp các mảnh thành lưới 3 hàng.

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.

# Create a faceted scatterplot of User_Score vs. Critic_Score with 3 rows
vgsales2016 %>%
  ___(___) %>%
  ___() %>%
  mutate(
    plot = ___(
      ___, ___,
      \(data, Platform) 
      	
    )) %>%
  subplot(nrows = ___, shareY = TRUE, shareX = TRUE)
Chỉnh sửa và Chạy Mã