Topshiriqlar 2 (Matplotlib)
Quyidagi mashqlar source/libs1/matplot_lib.ipynb mavzulari asosida tuzilgan.
1. Chiziqli grafik
x = np.arange(0, 21)uchun quyidagi 3 funksiyani bitta grafikda chizing:y1 = xy2 = x**2y3 = x**3Har bir chiziqqalabelbering valegend()qo‘shing.
np.sin(x)vanp.cos(x)ni 0 dan2πgacha bo‘lgan oraliqda chizing (np.linspace).sin: marker
'o', cos: marker'x'.
Grafikga sarlavha (
title), o‘qlar nomi (xlabel,ylabel) vagrid(True)qo‘shing.
2. Scatter
rng = np.random.default_rng(0)bilan 300 ta nuqta yarating:x = rng.normal(size=300)y = 3*x + rng.normal(scale=0.7, size=300)Scatter chizing vaalphani moslang.
(Ixtiyoriy)
yqiymatlariga qarab nuqtalarni ranglang (c=) va colorbar qo‘shing (plt.colorbar()).
3. Bar
Quyidagi kategoriyalar uchun ustunli grafik chizing:
cats = ['Dush', 'Sesh', 'Chor', 'Pay', 'Jum', 'Shan', 'Yak']vals = [5, 7, 6, 8, 9, 3, 4]grid(axis='y')qo‘shing.
Ustunlarning ustiga qiymatni yozib chiqing (har bir bar ustida
vals[i]ko‘rinsin).
4. Histogram
rng.normal(0, 1, size=10000)uchun gistogramma chizing:bins=20, keyinbins=60qilib solishtiring.
density=Truebilan gistogramma chizing va farqini izohlang (1–2 gap).
5. Subplots
2x2
subplotsyarating (fig, ax = plt.subplots(2,2, figsize=(...))) va quyidagilarni joylashtiring:(0,0):
y=x**2line plot(0,1): scatter (4-masala)
(1,0): bar (6-masala)
(1,1): histogram (8-masala) Har bir subplotga kichik sarlavha bering va
tight_layout()ishlating.
6. Saqlash
O‘zingiz yoqtirgan grafigingizni
plt.savefig('my_plot.svg', bbox_inches='tight')bilan saqlang.Fayl yaratilganini tasdiqlash uchun ishchi papkada bor-yo‘qligini tekshiring.
7. Kichik loyiha (ixtiyoriy)
30 kunlik “kunlik o‘qish soati” ma’lumotini o‘zingiz generatsiya qiling (masalan,
rng.integers(0, 6, size=30)).Line plot: kun -> soat
Histogram: soat taqsimoti
Natija: o‘rtacha, min, max ni hisoblab, grafik sarlavhasida ko‘rsating.