| Ábra és tengely létrehozás | |
|---|---|
| plt.figure() | Új üres ábra létrehozása. Méret (figsize) állítható. |
| plt.subplots() | Ábra + subplot rács létrehozása. |
| Alap grafikon típusok | |
| plot(x, y) | Vonaldiagram. |
| scatter(x, y) | Pontdiagram. |
| bar(x, height) | Oszlopdiagram. |
| hist(data, bins=…) | Hisztogram (eloszlás vizsgálat). |
| boxplot(data) | Dobozdiagram (medián, kvartilisek, outlierek). |
| imshow(matrix) | 2D mátrix vizualizáció (hőtérkép jelleg). |
| Címek és tengelyfeliratok | |
| set_title(“…”) / plt.title() | Grafikon címe. |
| set_xlabel() / set_ylabel() | Tengelyfeliratok. |
| Tengelyek kezelése | |
| set_xlim() / set_ylim() | Tengelyhatárok beállítása. |
| set_xticks() / set_yticks() | Tick pozíciók megadása. |
| tick_params() | Tick formázás. |
| Jelmagyarázat | |
| legend() | Jelmagyarázat megjelenítése. |
| Rács és stílus | |
| grid(True) | Rácsvonalak |
| plt.style.use(“style”) | Beépített stílus alkalmazása. |
| Layout | |
| tight_layout() | Automatikus igazítás (ne fedjék egymást a címek). |
| subplots_adjust() | Finom manuális layout szabályozás. |
| Extra vizualizációs elemek | |
| colorbar() | Színskála (imshow, scatter esetén). |
| annotate() | Felirat beszúrása grafikonra. |
Feladat
- Generálj 500 normál eloszlású adatot.
- Készíts 2×2 subplot elrendezést.
- Tartalmazza:
- Vonaldiagram (kumulatív összeg)
- Hisztogram
- Scatter plot
- Boxplot
- Használj:
- címet
- tengelyfeliratokat
- grid-et
- legend-et
- tengelykorlátot
- annotate-et
- style-t
- tight_layout-ot
<sxh python>
import numpy as np import matplotlib.pyplot as plt
#Stílus plt.style.use(“ggplot”)
#Adat generálás np.random.seed(42) data = np.random.randn(500) x = np.arange(len(data))
#Ábra és subplotok fig, axs = plt.subplots(2, 2, figsize=(12, 8))
#1. VONALDIAGRAM cumsum = np.cumsum(data)
axs[0,0].plot(x, cumsum, label=“Kumulatív összeg”) axs[0,0].set_title(“Vonaldiagram”) axs[0,0].set_xlabel(“Index”) axs[0,0].set_ylabel(“Érték”) axs[0,0].legend() axs[0,0].grid(True)
#Tengelykorlát axs[0,0].set_xlim(0, 500)
#Annotáció (maximum jelölése) max_idx = np.argmax(cumsum) axs[0,0].annotate(“Maximum”, xy=(max_idx, cumsum[max_idx]), xytext=(max_idx, cumsum[max_idx]+10), arrowprops=dict())
#2. HISZTOGRAM
axs[0,1].hist(data, bins=30) axs[0,1].set_title(“Hisztogram”) axs[0,1].set_xlabel(“Érték”) axs[0,1].set_ylabel(“Gyakoriság”) axs[0,1].grid(True)
#3. SCATTER
y = np.random.randn(500)
sc = axs[1,0].scatter(data, y) axs[1,0].set_title(“Scatter plot”) axs[1,0].set_xlabel(“X”) axs[1,0].set_ylabel(“Y”) axs[1,0].grid(True)
#4. BOXPLOT
axs[1,1].boxplot(data) axs[1,1].set_title(“Boxplot”) axs[1,1].grid(True)
#Layout optimalizálás plt.tight_layout()
plt.show() </sxh>
