1. Qrafiklərin annotasiyasının əhəmiyyəti
Niyə qrafiklərə başlıqlar, əfsanələr və annotasiyalar əlavə etmək vacibdir
Bugün biz verilənlərin vizualizasiyası ilə əlaqəli başqa bir önəmli mövzunu — annotasiyanı müzakirə edəcəyik. Bu, televizorun qəbuledicisi kimidir: hər şey qaydasındaymış kimi görünür, amma izləmək çətin ola bilər, çünki şəkil həmişə aydın olmur. Başlıqlar, əfsanələr və annotasiyalar bəzən çatışmır ki, verilənlər canlansın və insan üçün aydın olan bir dildə “danışsın”.
Özünüzə sual verə bilərsiniz: həqiqətənmi başlıqlar və əfsanələr bu qədər vacibdir? Cavab sadədir: onlar — qrafik üçün duz və istiot kimidir. Onsuz qrafikinizi oxumaq çətin ola bilər, və verilənlərin mənası itə bilər. Annotasiyalardan istifadə edərək, biz qrafikə əlavə mənalar veririk və onu daha intuitiv başa düşülən edirik.
Başlıqlar və əfsanələr tamaşaçılarınıza gördüklərini tez bir zamanda başa düşməyə kömək edir. Təsəvvür edin ki, siz işarələrsiz bir xəzinə xəritəsinə baxırsınız və sizdən dərhal xəzinələrə gedən yolu tapmağı xahiş edirlər. Bu, əslində bir az dəlisovluğa oxşayır, elə deyilmi? Qrafiklər də başlıqlar olmadan eyni vəziyyətdədir. Biz tamaşaçılara kömək etməliyik, onların həyatını çətinləşdirməməliyik.
İndi isə gəlin Python və Matplotlib vasitəsilə qrafiklərinizə annotasiyalar əlavə etmək sehrinə daha detallı baxaq. Hazırsınız? Onda başlayaq!
2. OX İMZALARI
xlabel, ylabel və title ilə ox imzalarının idarə olunması
İlk addım — oxların adlandırılmasıdır. Proses çox asandır. xlabel()
və ylabel()
funksiyalarından X
və Y
oxlarına imza əlavə etmək üçün istifadə edirik. Qrafik başlığı üçün isə title()
funksiyasını istifadə edirik. Bu funksiyalar qrafiki daha anlaşılan və strukturlaşdırılmış edir. Sadə bir nümunə:
import matplotlib.pyplot as plt
# Məlumatlar
x = [0, 1, 2, 3, 4, 5]
y = [0, 1, 4, 9, 16, 25]
# Qrafik yaradılması
plt.plot(x, y, color='blue')
# İmzaların əlavə olunması
plt.xlabel('Vaxt (saat)', color='red')
plt.ylabel('Məsafə (km)', color='green')
plt.title('Vaxt keçdikcə məsafənin artması', color='gold')
# Qrafik göstərilməsi
plt.show()
Eyni zamanda mətn və qrafiki sevdiyiniz rənglərə boyaya bilərsiniz:

İmzaların şrift və ölçüsünün tənzimlənməsi
Qrafiki daha cəlbedici etmək üçün imzaların şriftin ölçüsünü, rəngini və stilini dəyişə bilərsiniz. Matplotlib-də bunu fontsize
, fontweight
, color
və digər parametrlərlə etmək mümkündür.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 15, 20, 25, 30]
plt.plot(x, y)
# Parametrlərlə başlıq və imzaların tənzimlənməsi
plt.title("Qrafik nümunəsi", fontsize=16, fontweight="bold", color="navy")
plt.xlabel("X dəyərləri", fontsize=12, color="darkred")
plt.ylabel("Y dəyərləri", fontsize=12, color="darkred")
plt.show()
Bu nümunədə:
fontsize
şriftin ölçüsünü təyin edir.fontweight="bold"
mətnin qalın olmasını təmin edir.color
mətnin rəngini dəyişir.

3. "Əfsanə"nin görüntülənməsi
Əfsanənin legend() funksiyası ilə əlavə olunması və tənzimlənməsi
Əfsanə — nə sadəcə mif, nə də bir hekayədir, əfsanə sizin qrafikinizin çox vacib bir alətidir. Bu, qrafikdəki xətlərin və ya sütunların nəyi ifadə etdiyini izah edir və bir neçə məlumat seriyasını fərqləndirməyə kömək edir. Matplotlib bunu çox sadə edir. Baxın, qrafikinizə əfsanə necə əlavə edilə bilər:
# Verilənlər
x = [0, 1, 2, 3, 4, 5]
y1 = [0, 1, 4, 9, 16, 25]
y2 = [0, 1, 2, 3, 4, 5]
# Qrafik yaradılması
plt.plot(x, y1, label='Ədədin kvadratı')
plt.plot(x, y2, label='Öz dəyəri')
# Başlıqların əlavə olunması
plt.xlabel('Zaman (saat)')
plt.ylabel('Məsafə (km)')
plt.title('Funksiyanın müqayisəsi')
# Əfsanənin əlavə olunması
plt.legend(loc='upper left')
# Qrafikin göstərilməsi
plt.show()
legend()
çağırışı əfsanəni göstərdiyiniz yerə əlavə edir. loc
arqumentini 'best' ilə əvəz edə bilərsiniz, bu zaman Python özü ən rahat yeri seçəcək (aha, süni intellekt də işə salınıb).

Əfsanənin mövqeyi
Əfsanənin yerini loc
parametrindən istifadə edərək dəyişə bilərsiniz. Məsələn:
loc="upper right"
— yuxarı sağ künc (default olaraq).loc="upper left"
— yuxarı sol künc.loc="lower right"
— aşağı sağ künc.loc="center"
— mərkəz.
plt.legend(loc="upper left")
Əfsanənin ölçülərinin və rənglərinin tənzimlənməsi
Əfsanənin şrift ölçüsünü və rənglərini fontsize
, facecolor
və edgecolor
parametrlərindən istifadə edərək tənzimləyə bilərsiniz.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y1 = [10, 15, 20, 25, 30]
y2 = [5, 10, 15, 20, 25]
plt.plot(x, y1, label="Xətt 1", color="blue")
plt.plot(x, y2, label="Xətt 2", color="green")
plt.title("Tənzimlənən əfsanəli qrafik")
plt.xlabel("X dəyərləri")
plt.ylabel("Y dəyərləri")
# Əfsanənin tənzimlənməsi
plt.legend(loc="upper left", fontsize=10, facecolor="lightgray", edgecolor="black")
plt.show()

4. Oxların Formatlanması
Matplotlib qrafiklərin daha yaxşı anlaşılması üçün oxların miqyasını, etiketlərini və dəyərlər diapazonunu tənzimləməyə imkan verir.
Oxların diapazonunun dəyişdirilməsi
xlim()
və ylim()
funksiyaları oxlar üçün minimum və maksimum dəyərləri təyin etməyə imkan verir.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 15, 20, 25, 30]
plt.plot(x, y)
plt.xlabel("X Dəyərləri")
plt.ylabel("Y Dəyərləri")
plt.xlim(0, 6) # X oxunun diapazonu 0-dan 6-ya
plt.ylim(5, 35) # Y oxunun diapazonu 5-dən 35-ə
plt.show()

Etiketlərin intervalını tənzimləmə
xticks()
və yticks()
funksiyaları oxlar üçün fərdiləşdirilmiş etiketlərin təyin edilməsinə imkan verir.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 15, 20, 25, 30]
plt.plot(x, y)
plt.xlabel("X Dəyərləri")
plt.ylabel("Y Dəyərləri")
# X oxunun etiketlərinin tənzimlənməsi
plt.xticks([1, 2, 3, 4, 5], ["Bir", "İki", "Üç", "Dörd", "Beş"])
plt.show()

Qrafikə şəbəkə əlavə etmə
Şəbəkə, xüsusilə çoxlu nöqtələr və ya dəyərlər olduqda qrafikdə dəyərləri daha yaxşı başa düşməyə kömək edir.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 15, 20, 25, 30]
plt.plot(x, y)
plt.xlabel("X Dəyərləri")
plt.ylabel("Y Dəyərləri")
plt.grid(True) # Şəbəkə əlavə etmə
plt.show()
plt.grid(True)
ilə standart şəbəkə əlavə edilir. Onun stilini color
, linestyle
və linewidth
parametrləri ilə də tənzimləyə bilərsiniz.
plt.grid(color="boz", linestyle="--", linewidth=0.5)

5. Qrafikə annotasiyaların əlavə olunması
Annotasiyalar qrafiklərdə vacib nöqtələri və ya izahatları vurğulamağa imkan verir. annotate()
metodu qrafik üzərində müəyyən nöqtəyə mətn əlavə etməyə kömək edir.
Annotasiyanın əlavə olunması
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 15, 20, 25, 30]
plt.plot(x, y)
plt.xlabel("X dəyərləri")
plt.ylabel("Y dəyərləri")
# Annotasiya əlavə olunur
plt.annotate("Maksimum", xy=(5, 30), xytext=(3, 30),
arrowprops=dict(facecolor="black", shrink=0.05))
plt.show()
Bu nümunədə:
xy=(5, 30)
annotasiya edəcəyimiz nöqtənin koordinatlarını göstərir.xytext=(3, 30)
mətnin yerləşməsini göstərir.arrowprops
nöqtəyə işarə edən ox əlavə edir.

6. Qrafiklərin yaxşılaşdırılması nümunələri
Gedək praktikaya! Gəlin görək, annotasiyaların əlavə edilməsi qrafikləri necə yaxşılaşdırır.
Tutaq ki, bizdə iki fərqli məhsulun aylıq satış artımını göstərən qrafik var. Biz bunu daha anlaşıqlı etmək və lazımlı annotasiyalar əlavə etmək istəyirik.
import matplotlib.pyplot as plt
# Aylar və satışlar
months = ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun']
sales_product1 = [100, 120, 130, 150, 170, 190]
sales_product2 = [90, 110, 115, 140, 165, 180]
# Qrafikin qurulması
plt.plot(months, sales_product1, marker='o', label='Məhsul 1')
plt.plot(months, sales_product2, marker='s', label='Məhsul 2')
# Annotasiya
plt.xlabel('Aylar')
plt.ylabel('Satışlar (ədəd)')
plt.title('Məhsullar üzrə satış artımı')
plt.legend(loc='upper left')
# Annotasiyaların tənzimlənməsi
for i, txt in enumerate(sales_product1):
plt.annotate(txt, (months[i], sales_product1[i]), textcoords="offset points", xytext=(0,10), ha='center')
for i, txt in enumerate(sales_product2):
plt.annotate(txt, (months[i], sales_product2[i]), textcoords="offset points", xytext=(0,10), ha='center')
# Qrafikin göstərilməsi
plt.show()
Aha, biz hər bir məlumat nöqtəsinin üzərində kiçik parlaq rəqəmlər əlavə etdik! Bu cür annotasiyalar böyük həcmdəki məlumatların və kritik nöqtələrin təhlilində xilas rolunu oynaya bilər.

Yaxşı, görsənir ki, Matplotlib ilə qrafik annotasiyası öyrəndik. Bu bacarıqlar, xüsusilə hesabatlar və məlumatların təqdimatında faydalı olacaq, çünki hər bir söz min rəqəmdən daha artıq dəyərə sahibdir. Elə isə irəli, çəkin, imzalayın və məlumat dünyasını dəyişin!
GO TO FULL VERSION