การเลือกตัวแปรที่เหมาะสมสำหรับการเข้ารหัสด้วยสี
โจทย์คือการแสดงภาพค่ามลพิษของ Long Beach และเมืองใกล้เคียงในช่วงเวลาต่าง ๆ โค้ดที่ให้มาสร้างกราฟด้านล่าง (ซึ่งอ่านยาก) โดยแสดงค่ามลพิษสูงสุด (ส่งมาในชื่อ max_pollutant_values) และใช้สีของแท่งแทนค่าเมือง

ปรับแต่งเพียงเล็กน้อยก็ช่วยให้กราฟดูดีขึ้นได้มาก ด้วยการเลือกแสดงเฉพาะเมืองในฝั่งตะวันตกของประเทศ กราฟจะไม่รกตา จากนั้นการสลับการเข้ารหัสสีจาก city เป็น year ช่วยให้ใช้พาเลตต์แบบอันดับได้ และผู้อ่านไม่ต้องคอยดูคำอธิบายสัญลักษณ์ตลอดเวลาเพื่อตรวจสอบว่าสีใดแทนเมืองใด
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การพัฒนาการแสดงผลข้อมูลใน Python
คำแนะนำการฝึกหัด
- ลบ
'Indianapolis','Des Moines','Cincinnati','Houston'ออกจากเวกเตอร์cities - สลับการเข้ารหัสระหว่างตัวแปร
cityและyear - ใช้พาเลตต์ ColorBrewer
'BuGn'เพื่อกำหนดสีให้เหมาะสมกับตัวแปรที่เป็นแบบอันดับที่เพิ่งกำหนดขึ้นใหม่
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Reduce to just cities in the western half of US
cities = ['Fairbanks', 'Long Beach', 'Vandenberg Air Force Base', 'Denver',
'Indianapolis', 'Des Moines', 'Cincinnati', 'Houston']
# Filter data to desired cities
city_maxes = max_pollutant_values[max_pollutant_values.city.isin(cities)]
# Swap city and year encodings
sns.catplot(x = 'year', hue = 'city',
y = 'value', row = 'pollutant',
# Change palette to one appropriate for ordinal categories
data = city_maxes, palette = 'muted',
sharey = False, kind = 'bar')
plt.show()