6.7.26
Perjelas prioritas dengan matriks risiko
Dalam asesmen risiko, prioritas biasanya ditentukan oleh kemungkinan dan dampak. Heatmap matriks membuat item mendesak terlihat jelas.
import numpy as np
import matplotlib.pyplot as plt
levels = ["Rendah", "Agak rendah", "Sedang", "Agak tinggi", "Tinggi"]
impact = ["Ringan", "Terbatas", "Sedang", "Berat", "Kritis"]
risk_matrix = np.array(
[
[1, 1, 2, 3, 4],
[1, 2, 2, 3, 4],
[2, 2, 3, 4, 4],
[2, 3, 4, 4, 5],
[3, 4, 4, 5, 5],
]
)
fig, ax = plt.subplots(figsize=(5.8, 5.2))
im = ax.imshow(risk_matrix, cmap="YlOrRd", vmin=1, vmax=5)
ax.set_xticks(range(len(levels)), labels=levels)
ax.set_yticks(range(len(impact)), labels=impact)
ax.set_xlabel("Kemungkinan")
ax.set_ylabel("Dampak")
ax.set_title("Matriks risiko")
for i in range(risk_matrix.shape[0]):
for j in range(risk_matrix.shape[1]):
risk = risk_matrix[i, j]
color = "white" if risk >= 4 else "#0f172a"
ax.text(j, i, risk, ha="center", va="center", color=color, fontsize=12)
cbar = fig.colorbar(im, ax=ax, fraction=0.046, pad=0.04)
cbar.set_label("Level prioritas", rotation=270, labelpad=15)
ax.set_xticks(np.arange(-0.5, 5, 1), minor=True)
ax.set_yticks(np.arange(-0.5, 5, 1), minor=True)
ax.grid(which="minor", color="white", linewidth=1.5)
ax.tick_params(which="minor", bottom=False, left=False)
fig.tight_layout()
plt.show()

Kiat membaca #
- Sel merah kanan atas adalah prioritas tertinggi untuk mitigasi.
- Tambahkan aturan seperti “monitor saja” untuk area risiko rendah.
- Penomoran sel memudahkan tautan ke tiket atau tabel detail.