MulaiMulai sekarang secara gratis

Anotasi panah

Bayangkan Anda adalah perencana kota untuk Long Beach, California. Long Beach terletak di Samudra Pasifik dan memiliki pertunjukan kembang api besar setiap Malam Tahun Baru. Anda ingin meneliti apakah pertunjukan ini berdampak negatif pada kualitas udara kota. Untuk itu, Anda akan melihat tingkat CO dan NO2 pada Hari Tahun Baru. Namun, ternyata Hari Tahun Baru bukan salah satu pencilan pada plot di sebelah kanan; titiknya berada di area yang lebih padat.

Untuk membantu mengarahkan pembaca ke titik tersebut, Anda akan menggunakan anotasi dengan panah yang menunjuk ke nilai Hari Tahun Baru. Ini akan memberikan anotasi yang jelas yang menjelaskan apa yang dilihat pemirsa, sambil menampilkan teks di area plot yang kurang padat.

Latihan ini adalah bagian dari kursus

Meningkatkan Visualisasi Data Anda di Python

Lihat Kursus

Petunjuk latihan

  • Ambil baris dari jan_pollution yang sesuai dengan Hari Tahun Baru 2012 di kota Long Beach menggunakan metode .query() dari pandas.
  • Tetapkan titik akhir panah (xy) dengan menggunakan nilai kolom CO dan NO2 dari DataFrame lb_newyears.
  • Gunakan argumen xytext untuk menempatkan teks panah anotasi di pojok kiri bawah tampilan pada x = 2, y = 15.
  • "'shrink'" panah menjadi 0.03, agar tidak menutupi titik yang menjadi fokus.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Query and filter to New Years in Long Beach
jan_pollution = pollution.query("(month  ==  1) & (year  ==  2012)")
lb_newyears = jan_pollution.query("(____  ==  ____) & (____  ==  '____')")

sns.scatterplot(x = 'CO', y = 'NO2',
                data = jan_pollution)

# Point arrow to lb_newyears & place text in lower left 
plt.annotate('Long Beach New Years',
             xy = (____, ____),
             xytext = (____, _____), 
             # Shrink the arrow to avoid occlusion
             arrowprops = {'facecolor':'gray', 'width': 3, '____': ____},
             backgroundcolor = 'white')
plt.show()
Edit dan Jalankan Kode