Professional Documents
Culture Documents
Slide 5.3 Seaborn
Slide 5.3 Seaborn
Đường thẳng xuyên qua biểu đồ là đường thẳng phù hợp nhất với xu hướng tiền tip mà khách
hàng thường đưa ra đối với tổng hóa đơn được tạo.
Các điểm dữ liệu mà chúng ta nhìn thấy ở phía trên cùng bên phải nằm cách xa dòng này được
gọi là các điểm ngoại lai trong tập dữ liệu.
Biểu đồ xu hướng
Người hút thuốc tip nhiều hay ít?
Người hút thuốc có thể nhìn thấy hiển thị với màu xanh dương hào phóng hơn một
chút nhưng không nhất quán vì các điểm dữ liệu được dàn trải khá mơ hồ.
Biểu đồ xu hướng
Thay đổi kiểu đánh dấu dữ liệu
sns.lmplot(x="total_bill",
y="tip", hue="smoker",
data=tips, markers=["o", "x"],
palette="Set1", legend=False)
Biểu đồ xu hướng
Tách người hút thuốc và không hút thuốc ra 2 biểu đồ
sns.lmplot(x="total_bill",
y="tip",
col="smoker",
data=tips)
Biểu đồ phân bố
Mô tả sự phân bố dữ liệu số cho một hoặc nhiều nhóm bằng
cách sử dụng đường cong mật độ.
Chiều rộng của mỗi đường cong tương ứng với tần số gần
đúng của các điểm dữ liệu trong mỗi vùng.
Ví dụ:
biểu đồ phân bố cho thuộc tính
total_bill:
sns.violinplot(y = tips["total_bill"],
palette="coolwarm")
Biểu đồ phân bố
Violin plot được nhóm theo biến 1 biến phân loại là ngày
sns.violinplot(x="day",
y="total_bill",
data=tips)
Biểu đồ phân bố
Violin plot được nhóm theo biến 2 biến phân loại
sns.violinplot(x="day",
y="total_bill",
hue="smoker",
data=tips,
palette="muted")
Biểu đồ phân bố
Violin plot được chia 2 phần để so sánh giữa các biến
sns.violinplot(x="day",
y="total_bill",
hue="smoker",
data=tips,
palette="muted”,
split=True )
Biểu đồ phân bố
Kiểm soát thứ tự các violin plot bằng cách truyền một thứ tự
nhãn cụ thể
sns.violinplot(x="day",
y="total_bill",
hue="smoker",
data=tips,
order=["Dinner",
"Lunch"] )
Biểu đồ tần số
Biểu đồ tần số hiển thị số lượng quan sát trong mỗi nhóm
phân loại bằng cách sử dụng các thanh.
Ví dụ:
Hiển thị tần số của mỗi loại giới tính trong bộ dữ liệu
sns.countplot(x ='sex’,
data = tips)
Biểu đồ tần số
Hiển thị số lượng giá trị cho hai biến phân loại và sử dụng
tham số hue
sns.countplot(x ='sex’,
hue = "smoker",
data = tips)
Biểu đồ tần số
Vẽ các thanh theo chiều ngang
sns.countplot(y ='sex’,
hue = "smoker",
data = tips)
Biểu đồ heatmap
Heat map là một loại biểu đồ một biểu diễn đồ họa hai chiều
của dữ liệu trong đó các giá trị riêng lẻ chứa trong ma trận
được biểu diễn dưới dạng màu sắc.
Để biểu diễn các giá trị phổ biến hơn hoặc các hoạt động cao
hơn, các màu sáng hơn được sử dụng và để biểu thị các giá trị
hoạt động hoặc ít phổ biến hơn, các màu tối hơn được ưu tiên.
Biểu đồ heatmap
Tạo dữ liệu ngẫu nhiên theo phân phối đều để vẽ:
import numpy as np
uniform_data = np.random.rand(10, 12)
Vẽ heat map:
sns.heatmap(uniform_data)
Biểu đồ heatmap
sns.heatmap(uniform_data,
vmin=0,
vmax=1)
Biểu đồ boxplot
• Box plot biểu diễn trực quan của các nhóm dữ liệu số được
mô tả thông qua các phần tư của chúng.
• Boxplot cũng được sử dụng để phát hiện giá trị ngoại lai
trong tập dữ liệu như đã giới thiệu ở bài 4.
• Nó biểu diễn phân bố của dữ liệu một cách hiệu quả với
một hộp đơn giản và râu và cho phép chúng ta so sánh dễ
dàng giữa các nhóm.
• Boxplot biểu diễn dữ liệu mẫu bằng cách sử dụng phần
trăm thứ 25, 50 và 75. Những phần trăm này còn được gọi
là phần tư dưới, trung vị và phần tư trên.
Biểu đồ boxplot
Mỗi box plot gồm 5 phần:
• Minimum
• Trung vị (50%)
• Maximum
Biểu đồ boxplot
Vẽ biểu đồ box plot cho thuộc tính “total_bills”
sns.boxplot(x=
tips["total_bill"])
Biểu đồ boxplot
Vẽ box plot theo chiều dọc được nhóm theo một biến phân
loại
sns.boxplot(x="day",
y="total_bill",
data=tips )
Biểu đồ boxplot
Vẽ box plot theo chiều dọc được nhóm theo hai biến phân
loại:
sns.boxplot(x="day",
y="total_bill",
hue="smoker",
data=tips,
palette="Set3")
Biểu đồ boxplot
Vẽ box plot theo chiều dọc được nhóm theo hai biến phân
loại khi một số nhóm bị thiếu:
sns.boxplot(x="day",
y="total_bill",
hue="time",
data=tips,
linewidth=2.5)
Biểu đồ cặp
•
Biểu đồ cặp
sns.pairplot(tips,
hue ='sex')
Biểu đồ cặp
sns.pairplot(tips,
hue ='day')
Tóm tắt
Qua bài học này, chúng ta đã tìm hiểu những kiến thức sau:
• Seaborn là gì, có ưu điểm gì so với matplotlib
• Các loại biểu đồ: biểu đồ xu hướng, biểu đồ phân bố, biểu
đồ tần số, biểu đồ heatmap, biểu đồ boxplot, biểu đồ cặp.