6.7.23
Jangan lewatkan anomali dengan grafik kontrol
Saat perlu memantau variasi pada jumlah tiket atau yield produksi, grafik kontrol sangat membantu. Batas kendali statistik memudahkan deteksi anomali.
import numpy as np
import matplotlib.pyplot as plt
rng = np.random.default_rng(5)
values = 45 + rng.normal(0, 3, size=28)
values[[6, 18]] += np.array([12, -10]) # Sisipkan anomali
mean = values.mean()
std = values.std(ddof=1)
ucl = mean + 3 * std
lcl = mean - 3 * std
fig, ax = plt.subplots(figsize=(6.4, 3.6))
ax.plot(values, marker="o", color="#0ea5e9")
ax.axhline(mean, color="#334155", linewidth=1.3, label="Rata-rata")
ax.axhline(ucl, color="#ef4444", linestyle="--", label="UCL")
ax.axhline(lcl, color="#ef4444", linestyle="--", label="LCL")
ax.set_xticks(range(0, len(values), 4), labels=[f"W{i+1}" for i in range(0, len(values), 4)])
ax.set_title("Grafik kontrol waktu penanganan panggilan")
ax.set_ylabel("Waktu rata-rata (detik)")
ax.grid(alpha=0.2)
for idx, val in enumerate(values):
if val > ucl or val < lcl:
ax.annotate(
"Anomali",
(idx, val),
xytext=(idx + 0.5, val + 4),
arrowprops=dict(arrowstyle="->", color="#ef4444"),
color="#ef4444",
)
ax.legend(loc="upper right")
fig.tight_layout()
plt.show()

Kiat membaca #
- Tarik batas kendali (±3σ) di sekitar rata-rata untuk menandai titik yang tidak normal.
- Jika anomali berulang, proses mungkin berubah; telusuri akar masalahnya.
- Sesuaikan gaya garis dan marker agar selaras dengan gaya laporan.