Categorical palettes

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

Nick Strayer

Instructor

สามแผงที่แสดงประเทศ เมือง และนก เป็นตัวอย่างของข้อมูลแบบกลุ่ม

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

ข้อจำกัดด้านการรับรู้

  • ควรจำกัดไว้ที่ 10 กลุ่มหรือน้อยกว่า
  • คำนึงถึงผู้ที่มีปัญหาการแยกแยะสี
sns.palplot(sns.color_palette('Set2', 11))

กลุ่มสีที่แยกแยะได้ยากเนื่องจากมีจำนวนมากเกินไป

การพัฒนาการแสดงผลข้อมูลใน Python
# Assign a new column to dataframe the desired combos
pollution['interesting cities'] = [x if x in ['Long Beach', 'Cincinnati'] 
                                   else 'other' for x in pollution['city'] ]

sns.scatterplot(x="NO2", y="SO2", hue = 'interesting cities', palette='Set2',
                data=pollution.query('year == 2014 & month == 12'))

scatter plot ที่ให้สีจุดแตกต่างกันสำหรับ Long Beach และ Cincinnati ส่วนเมืองอื่นรวมเป็นกลุ่ม "other"

การพัฒนาการแสดงผลข้อมูลใน Python
colorbrewer_palettes = ['Set1',   'Set2',    'Set3',    'Accent', 
                        'Paired', 'Pastel1', 'Pastel2', 'Dark2']

for pal in colorbrewer_palettes: 
    sns.palplot(pal=sns.color_palette(pal))
    plt.title(pal, loc = 'left')

ชุดสี categorical ที่มีให้เลือกใช้

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

ข้อมูลแบบอันดับ (a)

  • มีลำดับระหว่างกลุ่ม

  • จำนวนกลุ่มที่แน่นอน

แผนภาพแสดงสี่ไตรมาส

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

ข้อมูลแบบอันดับ (b)

  • มีลำดับระหว่างกลุ่ม

  • จำนวนกลุ่มที่แน่นอน

แผนภาพแสดงเจ็ดวันในสัปดาห์

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

ข้อมูลแบบอันดับ (c)

  • มีลำดับระหว่างกลุ่ม

  • จำนวนกลุ่มที่แน่นอน

แผนภาพแสดงระดับความรู้สึกจากมีความสุขถึงเศร้าโดยใช้อีโมจิ

การพัฒนาการแสดงผลข้อมูลใน Python
colorbrewer_palettes = ['Reds', 'Blues', 'YlOrBr', 'PuBuGn', 'GnBu', 'Greys']

for i, pal in enumerate(colorbrewer_palettes): 
    sns.palplot(pal=sns.color_palette(pal, n_colors=i+4))

ชุดสีแบบอันดับที่มีให้เลือกใช้

การพัฒนาการแสดงผลข้อมูลใน Python
# Make a tertials column using qcut()
pollution['NO2 Tertial'] = pd.qcut(pollution['NO2'], 3, labels = False)

# Plot colored by the computer tertials 
sns.scatterplot(x="CO", y="SO2", hue='NO2 Tertial', palette="OrRd",
                data=pollution.query("city == 'Long Beach' & year == 2014"))

Scatterplot ของค่า CO และ SO2 ที่แสดงค่า tertial ของ NO2 ด้วยโทนสีแดงแบบอันดับ

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

มาฝึกกันเถอะ!

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

Preparing Video For Download...