📊 Bài tập thực hành: Trực quan hóa dữ liệu

Tur7 - Data Visualization Practice

📤 Nộp bài tập tại đây: 🔗 Google Drive Submission Folder | 🔑 Đáp án: 📓 Tải Answer Key

📋 Tổng quan bài tập

Sau khi hoàn thành các bài tập này, bạn sẽ có thể tạo các biểu đồ cơ bản với matplotlib, sử dụng seaborn để tạo các biểu đồ thống kê nâng cao, và áp dụng pandas plotting để trực quan hóa dữ liệu nhanh chóng.

⏱️ Thời gian ~100 phút
📚 Số phần 6 phần
✅ Số bài tập 14 bài tập
🎯 Mục tiêu Thành thạo visualization
📈

Phần 1: Matplotlib cơ bản (~15 phút)

Bài 1.1

Biểu đồ đường (Line Plot)

Tạo biểu đồ đường để hiển thị xu hướng doanh thu theo tháng trong năm 2024.

Yêu cầu:

  • Sử dụng matplotlib.pyplot để vẽ biểu đồ
  • Tạo dữ liệu doanh thu cho 12 tháng
  • Thêm tiêu đề và nhãn cho trục
  • Sử dụng màu xanh dương và marker 'o'
~5 phút
Bài 1.2

Biểu đồ cột (Bar Chart)

So sánh doanh số bán hàng của 5 danh mục sản phẩm khác nhau trong quý 1.

Yêu cầu:

  • Sử dụng plt.bar() để vẽ biểu đồ cột
  • Màu sắc khác nhau cho mỗi cột
  • Thêm nhãn giá trị trên đầu mỗi cột
  • Tùy chỉnh tiêu đề và nhãn
~10 phút
📊

Phần 2: Trực quan hóa thống kê (~15 phút)

Bài 2.1

Histogram và Density Plot

Phân tích phân bố lương nhân viên để hiểu cấu trúc lương trong công ty.

Yêu cầu:

  • Sử dụng plt.hist() với 20 bins
  • Thêm density plot (KDE) overlay
  • Tạo 2 subplot để so sánh
  • In thống kê mô tả
~10 phút
Bài 2.2

Boxplot So sánh

So sánh doanh số bán hàng giữa 4 khu vực khác nhau (Bắc, Trung, Nam, Tây Nguyên).

Yêu cầu:

  • Sử dụng plt.boxplot() để vẽ
  • Thêm nhãn cho các khu vực
  • Tùy chỉnh màu sắc và style
  • In thống kê cho mỗi khu vực
~5 phút
🎨

Phần 3: Seaborn nâng cao (~15 phút)

Bài 3.1

Seaborn Histogram với KDE

Phân tích phân bố điểm số của học sinh trong một kỳ thi với seaborn.

Yêu cầu:

  • Sử dụng sns.histplot() với kde=True
  • Tùy chỉnh màu sắc và style
  • Thêm tiêu đề và nhãn
  • Thêm grid
~10 phút
Bài 3.2

Scatter Plot với Đường Hồi quy

Phân tích mối quan hệ giữa số giờ học và điểm số của học sinh.

Yêu cầu:

  • Sử dụng sns.regplot() để vẽ
  • Thêm tiêu đề và nhãn
  • Tính hệ số tương quan Pearson
  • Nhận xét về mối tương quan
~5 phút
🐼

Phần 4: Pandas Plotting (~10 phút)

Bài 4.1

Trực quan hóa nhanh với Pandas

Sử dụng phương thức .plot() của pandas để trực quan hóa dữ liệu doanh thu nhanh chóng.

Yêu cầu:

  • Vẽ line plot với kind='line'
  • Vẽ bar chart với kind='bar'
  • Vẽ area chart với kind='area'
  • Tùy chỉnh tiêu đề và legend
~10 phút
🔥

Phần 5: Seaborn nâng cao (tiếp theo) (~20 phút)

Bài 5.1

Heatmap (Bản đồ nhiệt)

Phân tích ma trận tương quan giữa các biến trong dữ liệu khách hàng.

Yêu cầu:

  • Tính ma trận tương quan
  • Sử dụng sns.heatmap() để vẽ
  • Thêm annotations (giá trị)
  • Tùy chỉnh colormap
~7 phút
Bài 5.2

Violin Plot

So sánh phân bố chi tiêu của khách hàng theo giới tính.

Yêu cầu:

  • Sử dụng sns.violinplot() để vẽ
  • So sánh với boxplot
  • Tùy chỉnh màu sắc và style
  • In thống kê so sánh
~7 phút
Bài 5.3

Pair Plot (Biểu đồ cặp)

Khám phá mối quan hệ giữa tất cả các biến số trong dữ liệu khách hàng.

Yêu cầu:

  • Sử dụng sns.pairplot()
  • Thêm hue='GioiTinh' để phân loại
  • Tùy chỉnh diag_kind và plot_kws
  • Thêm tiêu đề tổng thể
~6 phút
🚀

Phần 6: Trực quan hóa nâng cao (~25 phút)

Bài 6.1

Subplots với nhiều biểu đồ

Tạo dashboard với nhiều biểu đồ khác nhau để trình bày tổng quan về hiệu suất bán hàng.

Yêu cầu:

  • Tạo subplot 2x2 với 4 biểu đồ
  • Line plot, bar chart, area chart, boxplot
  • Thêm tiêu đề cho mỗi subplot
  • Sử dụng plt.tight_layout()
~7 phút
Bài 6.2

Biểu đồ theo nhóm

Vẽ biểu đồ thu nhập và chi tiêu trung bình theo thành phố và giới tính.

Yêu cầu:

  • Sử dụng sns.barplot() với hue
  • Tạo 2 subplot để so sánh
  • In thống kê theo nhóm (groupby)
  • Tùy chỉnh màu sắc
~6 phút
Bài 6.3

Time Series Visualization

Phân tích xu hướng doanh thu theo thời gian và so sánh giữa các sản phẩm.

Yêu cầu:

  • Vẽ line plot với pandas
  • Vẽ area chart tổng doanh thu
  • Thêm moving average (trung bình động)
  • Tính và in thống kê xu hướng
~6 phút
Bài 6.4

Customization và Styling nâng cao

Tạo một biểu đồ chuyên nghiệp để trình bày trong báo cáo với tùy chỉnh toàn bộ style.

Yêu cầu:

  • Vẽ biểu đồ kết hợp line và bar
  • Tùy chỉnh màu sắc, font, layout
  • Thêm annotations cho điểm quan trọng
  • Tạo biểu đồ đẹp và chuyên nghiệp
~6 phút
← Quay lại trang chủ