เมื่อประเมินตัวชี้วัดสองแกน เช่น ผลกระทบและความง่ายในการทำ ควอดแรนต์ชาร์ตช่วยจำแนกได้ดี สีพื้นแต่ละควอดแรนต์ทำให้เห็นลำดับความสำคัญทันที
import matplotlib.pyplot as plt
import numpy as np
projects = ["A", "B", "C", "D", "E", "F", "G"]
impact = np.array([8.5, 5.5, 7.2, 3.8, 6.1, 8.9, 4.4])
effort = np.array([3.0, 6.2, 4.1, 5.5, 2.5, 7.0, 3.8])
colors = ["#22c55e", "#f97316", "#38bdf8", "#a855f7", "#14b8a6", "#facc15", "#ef4444"]
fig, ax = plt.subplots(figsize=(6, 6))
ax.axvline(5, color="#475569", linewidth=1.2)
ax.axhline(6, color="#475569", linewidth=1.2)
ax.fill_between([0, 5], 6, 10, color="#bbf7d0", alpha=0.5)
ax.fill_between([5, 10], 6, 10, color="#dbeafe", alpha=0.6)
ax.fill_between([0, 5], 0, 6, color="#fee2e2", alpha=0.6)
ax.fill_between([5, 10], 0, 6, color="#fde68a", alpha=0.6)
ax.scatter(effort, impact, s=110, color=colors, edgecolor="white", linewidth=1)
for label, x_val, y_val in zip(projects, effort, impact):
ax.text(x_val, y_val + 0.25, label, ha="center", fontsize=10, weight="bold")
ax.set_xlim(0, 10)
ax.set_ylim(0, 10)
ax.set_xlabel("ความง่ายในการทำ (ยิ่งสูงยิ่งง่าย)")
ax.set_ylabel("ผลกระทบทางธุรกิจ (ยิ่งสูงยิ่งมาก)")
ax.set_title("การจัดลำดับความสำคัญแบบควอดแรนต์")
ax.grid(alpha=0.2, linestyle="--")
fig.tight_layout()
plt.show()

อ่านอย่างไร #
- ควอดแรนต์ขวาบนคือผลกระทบสูงและทำง่าย ควรทำก่อน
- ซ้ายล่างคือผลกระทบต่ำแต่ทำยาก เหมาะกับการเลื่อนหรือยกเลิก
- ปรับเส้นแบ่งตามค่ากึ่งกลางเพื่อให้การจัดกลุ่มสมดุลขึ้น