ข้ามไปยังเนื้อหา
Power BI สร้างกราฟ Top 5 + รวมยอดที่เหลือแบบ Dynamic

บทความโดย: 9Expert Team

Power BI สร้างกราฟ Top 5 + รวมยอดที่เหลือแบบ Dynamic

สินค้าหลายร้อยรายการในกราฟเดียวทำให้รายงานอ่านยากและสื่อสารไม่ตรงจุด บทความนี้สอนเทคนิคแสดงเฉพาะสินค้าขายดีอันดับต้น พร้อมรวมยอดที่เหลือไว้เป็น Others ด้วย DAX ใน Power BI ผู้ใช้เลือกจำนวนอันดับเองได้ผ่าน What-if Parameter ตั้งแต่สร้างตาราง Measure จัดอันดับ ไปจนถึงปรับสีและกรองข้อมูล

9Expert Team 2 นาที

Power BI เทคนิคสร้างกราฟขายดี 5 อันดับแรก (Top 5) + รวมยอดที่เหลือ แบบ Dynamic

เมื่อต้องแสดงข้อมูลสินค้าขายดีหลายร้อยรายการในกราฟ คุณจะทำอย่างไร? มาเรียนรู้เทคนิคการสร้างกราฟที่แสดงเฉพาะ Top 5 พร้อมรวมยอดที่เหลือเป็น "Others" แบบปรับค่าได้ตามต้องการ ด้วย DAX ใน Power BI ที่จะทำให้รายงานของคุณดูเป็นมืออาชีพและใช้งานได้จริง!

ปัญหาที่พบบ่อย: ข้อมูลมากเกินไป

เมื่อเรามีข้อมูลสินค้าหรือโมเดลมากถึง 293 รายการ หากนำไปแสดงในกราฟแท่งหรือกราฟวงกลมทั้งหมด กราฟจะอ่านยากและไม่สื่อความหมาย วิธีแก้ปัญหาคือการแสดงเฉพาะอันดับต้นๆ และรวมที่เหลือเป็น "Others"

หากข้อมูลมากเกินไป การนำไปแสดงเป็น Visualization อาจจะอ่านยากและไม่สื่อความหมาย

4 ขั้นตอนหลักในการสร้าง Top N + Others

ขั้นตอนที่ 1: สร้างตารางใหม่ด้วย DAX

เริ่มต้นด้วยการสร้างตารางใหม่โดยใช้ฟังก์ชัน UNION ใน DAX:

การสร้าง Table ขึ้นมาใหม่ ชื่อว่า ProductsWithOther
ProductsWithOthers =
UNION(ALLNOBLANKROW(Products[ModelName]),
ROW("ModelName", "Others"))

คำสั่งนี้จะดึงรายชื่อโมเดลทั้งหมดที่ไม่ซ้ำกันและเพิ่มแถว "Others" เข้าไปด้วย

ขั้นตอนที่ 2: สร้าง Parameter แบบ Dynamic

ใช้ What-if Parameter เพื่อให้ผู้ใช้สามารถเลือกจำนวน Top N ได้เอง:

  • สร้าง Parameter ชื่อ “Top N Value”

  • กำหนด Range เช่น 1-20

  • สร้าง Slicer ให้ผู้ใช้เลื่อนเลือกค่าได้

สร้าง Parameter รูปแบบ What-If เพื่อให้การแสดงลำดับ สามารถแสดงได้อย่างมี dynamic

ขั้นตอนที่ 3: สร้าง Measure Top สำหรับการจัดอันดับยอดขายสูงสุด

สร้าง Measure Top ที่จะแสดงยอดขายที่มีการจัดอันดับสูงสุด โดยมีเงื่อนไขพิเศษ:

Measure ของ Rank สำหรับการนำมาใช้เป็น Others

เพื่อให้ “Others” อยู่ล่างสุดเสมอ ต้องสร้าง Measure สำหรับ Rank:

Top =
VAR TopCustomers =
TOPN(Parameter[Parameter Value],
ALLSELECTED(ProductsWithOthers[ModelName]),
[Total Revenue])

VAR AllSales = CALCULATE([Total Revenue],
ALLSELECTED(ProductsWithOthers[ModelName]))

VAR Other_Sales = AllSales - CALCULATE([Total Revenue], TopCustomers)
VAR TopSales =
CALCULATE([Total Revenue], KEEPFILTERS(TopCustomers))

RETURN
IF(SELECTEDVALUE(ProductsWithOthers[ModelName]) = "Others",
Other_Sales, TopSales)

ขั้นตอนที่ 4: สร้าง Measure Rank สำหรับจัดลำดับ

Measure ของ Rank สำหรับการนำมาใช้เป็น Others

เพื่อให้ “Others” อยู่ล่างสุดเสมอ ต้องสร้าง Measure สำหรับ Rank:

Rank =
VAR ONE_ =
RANKX(ALLSELECTED(ProductsWithOthers[ModelName]), [Total Revenue],,DESC )

RETURN
IF(ONE_ <= Parameter[Parameter Value] , ONE_,
IF(SELECTEDVALUE(ProductsWithOthers[ModelName]) ="Others",
Parameter[Parameter Value] + 1, BLANK()))

ฟีเจอร์พิเศษ: ปรับแต่งสีของ Others

เปลี่ยนสี Column ของ Others เพื่อให้เห็นความเด่นชัดมากขึ้น

สามารถกำหนดสีพิเศษให้กับแท่ง “Others” เพื่อให้โดดเด่น โดยใช้ Conditional Formatting ตามค่า Model Name

การใช้งานขั้นสูง: Filter ตามประเทศหรือหมวดหมู่

การเลือกดูยอดขายติดอันดับในแต่ล่ะประเทศ เมื่อมีการเลือกไปที่ประเทศต่าง ๆ
  • Filter ดูเฉพาะประเทศที่ต้องการ เช่น ดู Top 5 ของประเทศอังกฤษ

  • Filter ตามหมวดสินค้า เช่น ดู Top 5 ของหมวด Accessories

  • ข้อมูลจะปรับเปลี่ยนแบบ Dynamic ตามการ Filter

สรุป

เทคนิค Top N + Others ใน Power BI เป็นวิธีการแสดงข้อมูลที่มีประสิทธิภาพสำหรับการนำเสนอข้อมูลจำนวนมาก ช่วยให้ผู้ดูรายงานเห็นภาพรวมและรายละเอียดที่สำคัญได้อย่างชัดเจน ด้วยการใช้ DAX และ What-if Parameter ทำให้รายงานมีความยืดหยุ่น ผู้ใช้สามารถปรับเปลี่ยนจำนวน Top N ได้ตามต้องการ เริ่มต้นได้ทันที ไม่ต้องเขียนโค้ดซับซ้อน เพียงทำตาม 4 ขั้นตอนง่ายๆ ก็สามารถสร้างรายงานระดับมืออาชีพได้แล้ว!
 

Power BI เทคนิคสร้างกราฟขายดี 5 อันดับแรก (Top 5) + รวมยอดที่เหลือ


หลักสูตรที่เกี่ยวข้อง

บทความที่เกี่ยวข้อง