Seaborn ให้ฟังก์ชัน barplot() สำหรับสร้างกราฟแท่งพร้อมจัดสไตล์ลักษณะแท่ง (styling bars) ผ่านพารามิเตอร์ facecolor (สีพื้น), edgecolor (สีขอบ), และ linewidth (ความหนาขอบ)
ขั้นตอนการทำงาน
1. นำเข้าไลบรารี
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
2. โหลดข้อมูล Cricketers2.csv
dataFrame = pd.read_csv(r"C:\Users\amit_\Desktop\Cricketers2.csv")
3. วาด Bar Plot และจัดสไตล์แท่ง
sns.barplot(
x=dataFrame["Role"],
y=dataFrame["Matches"],
facecolor=(1, 1, 0, 0), # สีพื้น: สีเหลือง โปร่งใส (RGBA)
linewidth=4, # ความหนาขอบ
edgecolor=sns.color_palette("dark", 2) # สีขอบจาก palette
)
โค้ดตัวอย่างสมบูรณ์
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
# โหลดข้อมูล
dataFrame = pd.read_csv(r"C:\Users\amit_\Desktop\Cricketers2.csv")
# วาด Bar Plot จัดสไตล์แท่ง
sns.barplot(
x=dataFrame["Role"],
y=dataFrame["Matches"],
facecolor=(1, 1, 0, 0), # RGBA: Yellow, transparent
linewidth=4,
edgecolor=sns.color_palette("dark", 2)
)
# แสดงกราฟ
plt.show()
ผลลัพธ์
กราฟแท่งแสดงจำนวนแมตช์เฉลี่ย (Matches) จัดกลุ่มตามตำแหน่ง (Role) แท่งมีขอบสีเข้ม กว้าง 4px พื้นโปร่งใส สีขอบมาจาก palette "dark"

คำอธิบายพารามิเตอร์สไตล์
| พารามิเตอร์ | คำอธิบาย | ตัวอย่าง |
|---|---|---|
facecolor | สีพื้นแท่ง (fill color) | (1, 0, 0, 0.5) = แดง โปร่งใส 50% |
edgecolor | สีขอบแท่ง | "black", "#333", palette |
linewidth | ความหนาขอบ (points) | 2, 4 |
hatch | รูปแบบลายแท่ง | "//", "\\\\", "xx" |
ตัวอย่างสไตล์อื่นๆ
# แท่งทึบ สีจาก palette, ขอบดำ บาง
sns.barplot(x="Role", y="Matches", data=dataFrame, palette="pastel", edgecolor="black", linewidth=1)
# แท่งมีลาย hatch
sns.barplot(x="Role", y="Matches", data=dataFrame, facecolor="white", hatch="//", edgecolor="black")
# ใช้ palette แบบกำหนดเอง
colors = ["#1f77b4", "#ff7f0e", "#2ca02c"]
sns.barplot(x="Role", y="Matches", data=dataFrame, palette=colors)
หมายเหตุ
facecolor=(1, 1, 0, 0)= RGBA tuple (Red=1, Green=1, Blue=0, Alpha=0) = สีเหลือง โปร่งใส 100%sns.color_palette("dark", 2)คืนสี 2 สีจาก palette "dark"- ใน Seaborn v0.12+ อาจใช้
colorแทนfacecolorได้