1. Qrafikləri yadda saxlama üsulları
Bu gün biz sadəcə gözəl qrafiklər qurmayacağıq, həm də onları hesabatlarınızda, təqdimatlarınızda və ya "Bax, mən bunu etdim!" deyə biləcəyiniz albomlarda istifadə edə biləcəyiniz möhtəşəm şəkillərə çevriləcəyik. Kim bilir, bəlkə də qrafikiniz sosial şəbəkələrdə viral olur və nəhayət 15 dəqiqəlik şöhrət payınızı alırsınız!
Hər hansı yaxşı kulinariya şousunda olduğu kimi, resepti seçməzdən əvvəl fərqli fayl formatlarını nəzərdən keçirəcəyik. Hər bir formatın öz xüsusiyyətləri var və bu nüansları anlamaq sizə menyunuz üçün uyğun "yemək" seçməyə kömək edəcək. Budur, onlardan bəziləri:
- PNG (Portable Network Graphics): veb qrafikası üçün ən populyar formatlardan biridir. Yaxşı sıxılma, keyfiyyət itkisi olmadan, şəffaflıq və əksər proqramlarda yaxşı dəstək xüsusiyyətlərinə malikdir.
- PDF (Portable Document Format): sənədlərə daxil etmək üçün idealdır. Vektorial formata malikdir, yəni miqyaslama zamanı şəkil aydınlığını qoruyur.
- SVG (Scalable Vector Graphics): başqa bir vektorial format, veb üçün mükəmməldir. İnteraktivlik və animasiyaları dəstəkləyir.
- JPEG (Joint Photographic Experts Group): adətən fotolar üçün istifadə olunur, çünki məlumat itkisi ilə sıxılma var və bu, mətnli qrafiklər üçün uyğun olmaya bilər.
Artıq hansı variantlara sahib olduğumuzu bildiyimizə görə, indi Matplotlib kitabxanasının savefig() funksiyası ilə qrafikləri yadda saxlamağa başlayaq.
savefig() funksiyası ilə qrafikləri yadda saxlamaq
Matplotlib qrafikləri yadda saxlamaq prosesini olduqca ağrısız edir, sanki telefonunuzda OS yeniləmək kimi (hər şey plan üzrə gedirsə). Gəlin bunu necə etdiyimizi nəzərdən keçirək.
import matplotlib.pyplot as plt
# Tutaq ki, sadə bir qrafikimiz var
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]
plt.plot(x, y, label='Sadə ədədlər')
plt.xlabel('x')
plt.ylabel('y')
plt.title('Sadə ədədlərin xətt qrafiki')
plt.legend()
# Qrafiki fayla yadda saxlamaq
plt.savefig('primes.png')
Bu kod primes.png adlı faylı cari direktoriya içində yaradır. Vəssalam! Nə rəqəmsal tanrılara qurban verməyə, nə də tilsim əzbərləməyə ehtiyac yoxdur. Sadəcə plt.show() əvəzinə plt.savefig('yol/fayl adı') çağırırsınız və hər şey hazırdır!
2. Saxlama parametrlərinin tənzimlənməsi
Əlbəttə, sadəcə qrafiki saxlamaq kifayət etmir — biz istəyirik ki, bu, möhtəşəm görünsün! Köhnə bir məsələ deyir: "Əgər qrafik keyfiyyətsizdirsə, heç kim ona diqqət etməz". Yaxud elə bir şey.
Şəkil keyfiyyətinin və çözünürlüğünün tənzimlənməsi
Yüksək keyfiyyətli şəkillər yaradılması üçün dpi (dots per inch) parametrini tənzimləməklə şəkilin piksel sıxlığını dəyişmək olar. Dəyər nə qədər yüksəkdirsə, görüntü bir o qədər detallı olacaq. Veb üçün adətən 72 dpi kifayətdir, çap üçün isə 300 dpi və ya daha çox.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 20, 15, 25, 30]
plt.plot(x, y)
# Yüksək çözünürlüklə qrafikin saxlanması
plt.savefig("high_quality_plot.png", dpi=300)
plt.show()
Burada dpi=300 şəkil keyfiyyətini artırır və onu daha dəqiq edir, bu xüsusilə hesabatlar və çap üçün faydalıdır.
Sərhədsiz və əlavə boşluq olmadan saxlama
Matplotlib standart olaraq qrafik ətrafında boş sahələr əlavə edir ki, bu da həmişə hesabat üçün əlverişli olmur. Şəkli sahəsiz saxlamaq üçün bbox_inches="tight" parametrindən istifadə edin.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [5, 10, 15, 20, 25]
plt.plot(x, y)
# Qrafikin sərhədsiz saxlanması
plt.savefig("plot_no_borders.png", bbox_inches="tight")
plt.show()
bbox_inches="tight" parametri qrafik ətrafındakı artıq boşluqları aradan qaldırır və daha kompakt bir görüntü əldə etməyə imkan verir.
Saxlamadan əvvəl qrafik ölçülərinin təyin edilməsi
Bəzən qrafiki müəyyən ölçülərlə saxlamaq lazımdır (məsələn, təqdimatlar və ya veb nəşrlər üçün). figure(figsize=(en, hündürlük)) istifadə edərək qrafik ölçülərini düymlərlə müəyyən etmək mümkündür.
import matplotlib.pyplot as plt
# Qrafik ölçülərinin təyini
plt.figure(figsize=(10, 5)) # Eni 10 düym, hündürlüyü 5 düym
x = [1, 2, 3, 4, 5]
y = [5, 10, 15, 20, 25]
plt.plot(x, y)
plt.title("Təyin olunmuş ölçüdə qrafik")
# Təyin edilmiş ölçü ilə qrafikin saxlanması
plt.savefig("custom_size_plot.png")
plt.show()
Bu nümunədə qrafik 10x5 düym ölçüsündə saxlanılır. Ölçüləri hesabat və ya təqdimatın spesifik tələblərinə uyğun tənzimləmək olar.
savefig() üçün əlavə parametrlər
transparent=True: Şəffaf fonla şəkil saxlayır, bu isə rəngli və ya şəffaf fonlara yerləşdirmək üçün faydalıdır.pad_inches: Qrafik ətrafında əlavə boşluqları müəyyən edir.bbox_inchesilə birlikdə istifadə olunur.format: Fayl saxlama formatını göstərir: pdf, png, jpg, və s.
Əgər format parametri qeyd olunmazsa, savefig() metodu fayl adından formatı müəyyən etməyə çalışacaq.
# Parametr tənzimləmələri ilə qrafikin saxlanması
plt.savefig('primes_high_res', dpi=300, pad_inches='tight', format='png', transparent=True)
İndi sizin qrafikiniz o qədər dəqiq görünəcək ki, baxan hər kəs deyəcək: "Vau, sən, həqiqətən, nə etdiyini bilirdin!"
3. Saxlama nümunələri
Ümumiyyətlə, bizdə yoxlama və ayıklama üçün istifadə edə biləcəyimiz bir çox nümunə var. Bunun sayəsində müxtəlif parametrlərin son nəticəyə necə təsir etdiyini başa düşə bilərik.
PDF formatında saxlama
Əgər qrafiki hesabat və ya təqdimata yerləşdirmək lazımdırsa, PDF formatı bunun üçün idealdır. Onun vektor xassələri şəkilin keyfiyyətini itirmədən miqyaslandırmağa imkan verir.
plt.savefig('primes.pdf', bbox_inches='tight')
Vektor formatında SVG ilə saxlama
SVG veb-səhifələr və ya animasiyalı plaginlər üçün əladır, çünki onun xüsusiyyətləri interaktivlik əlavə etməyə imkan verir.
plt.savefig('primes.svg', bbox_inches='tight')
JPEG formatında saxlama
Əgər qrafikdə əsasən şəkillər və ya mətn deyil, kəskin xətlər üstünlük təşkil edirsə, JPEG formatı faydalı ola bilər.
plt.savefig('primes.jpg', quality=95)
Faydalı məsləhətlər
- Fayl adları: Faylları daha asan tapmaq və yenidən istifadə etmək üçün aydın və təsviri adlar seçin.
- Keyfiyyəti yoxlayın: Hesabata daxil etməzdən əvvəl qrafiki ekranda nəzərdən keçirin ki, keyfiyyət tələblərə cavab versin.
- Şəffaf fon istifadəsi: Təqdimatlar və ya veb-saytlar üçün qrafik yaradarkən, qrafiki rəngli fonun üstünə yerləşdirmək lazım olduqda faydalıdır.
Tipik problemlər
Qrafikləri yadda saxlayanda problemlər yarana bilər, elə printer sürücülərini yeniləməyə çalışanda olduğu kimi. Ən çox rast gəlinən problemlərdən biri — savefig() funksiyasının Jupyter Notebook kimi mühitlərdə işləməməsidir. Bunun səbəbi interaktiv mühitlərdə qrafiklərin yalnız göstərilə bilməsi, lakin yadda saxlanıla bilməməsidir. Belə hallarda qrafiki yadda saxladıqdan sonra onu bağlamaq üçün plt.close() metodunu istifadə edə bilərsiniz.
GO TO FULL VERSION