Mức độ phổ biến của hàng hóa theo bang
Bộ dữ liệu chợ nông sản có các cột tương ứng với 28 loại hàng hóa khác nhau và việc chúng có được bán ở chợ đó hay không. Bạn muốn xem liệu có câu chuyện thú vị nào về việc bạn có khả năng tìm thấy một mặt hàng nhất định ở các chợ của từng bang hay không. Để trả lời câu hỏi này, bạn gom dữ liệu về ba cột:
state- tên banggood- mặt hàng quan tâmprop_selling- tỷ lệ các chợ trong bang đó có bán mặt hàng đó
Để nhanh chóng xem có xuất hiện mẫu hình nào không, bạn chọn một tập con các mặt hàng mà bạn thấy thú vị và quyết định vẽ một biểu đồ scatter bằng chữ đơn giản: mặt hàng trên trục x và tỷ lệ các chợ của một bang bán mặt hàng đó trên trục y.
Bài tập này là một phần của khóa học
Nâng cấp trực quan hóa dữ liệu của bạn với Python
Hướng dẫn bài tập
Lọc
goods_by_statetheo các mặt hàng mong muốn được liệt kê trongto_plot.Ẩn các điểm scatter bằng cách đặt kích thước của chúng về rỗng.
- Lưu ý rằng trong
sns.scatterplot(),sizedùng để ánh xạ giá trị từ một cột sang thang kích thước, cònsdùng để đặt một kích thước cố định cho mọi điểm.
- Lưu ý rằng trong
Căn giữa văn bản để nó nằm đúng tại vị trí trục x của mặt 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.
# Subset goods to interesting ones
to_plot = ['Cheese','Maple','Fruits','Grains','Seafood','Plants','Vegetables']
goods_by_state_small = goods_by_state.____("good in "+str(to_plot))
g = sns.scatterplot('good','prop_selling', data = goods_by_state_small,
# Hide scatter points by shrinking to nothing
____ = ____)
for _,row in goods_by_state_small.iterrows():
g.annotate(row['state'], (row['good'], row['prop_selling']),
# Center annotation on axis
ha = '____',
size = 10)
plt.show()