เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

กำจัดสีที่ไม่จำเป็นออก

หากต้องการเปรียบเทียบความสัมพันธ์ระหว่างค่า CO กับ NO2 ในแต่ละเมือง อาจลองใช้ scatter plot ธรรมดาที่ใช้สีแยกแยะข้อมูลของแต่ละเมือง

Scatter plot of CO and NO2 with lots of overlapping plots

แต่ผลลัพธ์ที่ได้กลับวุ่นวายมาก เพราะสีของแต่ละเมืองมีความใกล้เคียงกัน ทำให้แยกความแตกต่างได้ยาก บางครั้ง palette สีที่ดีที่สุดสำหรับกราฟก็คือการไม่ใช้สีเลย

เพื่อแก้ปัญหานี้ ให้ตัดองค์ประกอบด้านสีออก แล้วแบ่งกราฟเป็น facet ตามแต่ละเมืองแทน แม้ผลลัพธ์อาจดูเรียบกว่าเดิม แต่จะช่วยให้อ่านและเปรียบเทียบความแตกต่างระหว่างเมืองได้ชัดเจนขึ้นมาก

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การพัฒนาการแสดงผลข้อมูลใน Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ในการสร้างกราฟที่แบ่ง facet ตาม city ให้ส่งข้อมูล pollution เข้าไปในฟังก์ชันการพล็อต กำหนดให้ city แมปกับคอลัมน์ และตั้งค่าความกว้างของ facet เป็น 3 คอลัมน์
  • ใช้ฟังก์ชัน g.map() เพื่อแมป scatterplot() บน grid โดยใช้ aesthetic เดียวกับ scatter plot เดิม แต่ไม่ต้องระบุอาร์กิวเมนต์ hue

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Hard to read scatter of CO and NO2 w/ color mapped to city
# sns.scatterplot('CO', 'NO2',
#                 alpha = 0.2,
#                 hue = 'city',
#                 data = pollution)

# Setup a facet grid to separate the cities apart
g = sns.FacetGrid(data = ____,
                  col = '____',
                  col_wrap = ____)

# Map sns.scatterplot to create separate city scatter plots
g.map(sns.____, 'CO', 'NO2', alpha = 0.2)
plt.show()
แก้ไขและรันโค้ด