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

Tự động hóa trực quan hóa của bạn

Một trong những điểm mạnh lớn của Matplotlib là bạn có thể tự động hóa để thích ứng với dữ liệu đầu vào. Ví dụ, nếu bạn nhận dữ liệu có số lượng danh mục không xác định, bạn vẫn có thể tạo biểu đồ cột với một cột cho mỗi danh mục.

Đó chính là việc bạn sẽ làm trong bài tập này. Bạn sẽ trực quan hóa dữ liệu về các vận động viên đoạt huy chương tại Thế vận hội mùa hè 2016 một lần nữa, nhưng lần này bạn có một tập dữ liệu có số lượng bộ môn thể thao không xác định. Tập dữ liệu này được nạp vào bộ nhớ dưới dạng một đối tượng DataFrame của pandas tên là summer_2016_medals, trong đó có một cột "Sport" cho biết mỗi hàng thuộc bộ môn nào. Cũng có một cột "Weight" cho biết cân nặng của từng vận động viên.

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

Nhập môn trực quan hóa dữ liệu với Matplotlib

Xem khóa học

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

  • Lặp qua các giá trị của sports và dùng sport làm biến vòng lặp.
  • Trong mỗi lượt lặp, trích các hàng mà cột "Sport" bằng sport.
  • Thêm một cột vào đối tượng ax đã cho, gắn nhãn bằng tên môn thể thao, với chiều cao là giá trị trung bình của cột "Weight", và thanh lỗi trên trục y là độ lệch chuẩn.
  • Lưu hình vào tệp "sports_weights.png".

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.

fig, ax = plt.subplots()

# Loop over the different sports branches
for ____ in ____:
  # Extract the rows only for this sport
  sport_df = ____
  # Add a bar for the "Weight" mean with std y error bar
  ____

ax.set_ylabel("Weight")
ax.set_xticklabels(sports, rotation=90)

# Save the figure to file
____
Chỉnh sửa và Chạy Mã