BaşlayınÜcretsiz Başlayın

Çok fazla kategoriyle başa çıkmak

Bazen figür alanın kısıtlı olabilir ve aynı anda çok fazla veriyi göstermen gerekebilir. Burada pollution veri kümesinde her şehir için her kirleticinin bir yıllık seyrini göstermek istiyorsun. Her kirletici seyri, y-değeri yıl ortalamasından standart sapma olacak şekilde bir çizgi olarak çizilecek. Bu da grafiğinde aynı anda çok fazla çizgi olacağı anlamına gelir — renkle netçe ayırabileceğinden çok daha fazla.

Bunu yönetmek için, şehir–kirletici kombinasyonlarının (wanted_combos) küçük bir alt kümesini vurgulamaya karar verdin. Bu alt küme senin için en önemli olanı; diğer seyirler ise karşılaştırma için değerli bir bağlam sağlayacak. Dikkati toplamak için, vurgulanmayan tüm seyir çizgilerini aynı ‘other’ rengiyle ayarlayacaksın.

Bu egzersiz

Python'da Veri Görselleştirmelerini İyileştirme

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Liste üretecini (list comprehension) değiştirerek istenen şehir ve kirletici kombinasyonlarını (wanted_combos) ayıkla.
  • Çizgi grafiğine DataFrame’inde yeni oluşturduğun color_cats sütununa göre renklendirme yapmasını söyle.
  • Her çizginin oluşması için noktaların nasıl, yani hangi sütundaki kayıtlardan, birbirine bağlanacağını belirtmek üzere units argümanını kullan.
  • Noktaların gruplandırılmasını estimator argümanıyla devre dışı bırak.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Choose the combos that get distinct colors
wanted_combos = ['Vandenberg Air Force Base NO2', 'Long Beach CO', 'Cincinnati SO2']

# Assign a new column to DataFrame for isolating the desired combos
city_pol_month['color_cats'] = [x if x in ____ else 'other' for x in city_pol_month['city_pol']]

# Plot lines with color driven by new column and lines driven by original categories
sns.lineplot(x = "month",
             y = "value",
             hue = '____',
             units = '____',
             estimator = ____,
             palette = 'Set2',
             data = city_pol_month)
plt.show()
Kodu Düzenle ve Çalıştır