วิธีสร้าง Sankey chart ด้วย Power BI 1

วิธีสร้าง Sankey chart ด้วย Power BI

Sankey chart คืออะไร

Sankey chart หรือ Sankey diagram เป็นกราฟยอดนิยมที่หลายคนน่าจะเคยเห็นผ่านตามาบ้างเวลาแสดงการไหลของข้อมูลจากจุดเริ่มต้นหลายตำแหน่งไปยังปลายทางอีกหลายตำแหน่งเช่นเดียวกัน

วิธีสร้าง Sankey chart ด้วย Power BI 2

ตัวอย่างการใช้ Sankey chart เช่น การเข้าชมเว็บไซต์หรือแอปพลิเคชันในแต่ละหน้า (user’s journey), การวิเคราะห์การเดินทางของนักท่องเที่ยว, การติดตามการใช้จ่ายงบประมาณ

วิธีสร้าง Sankey chart มีหลายวิธี เช่น เว็บไซต์ที่สร้าง Sankey, การเขียนโปรแกรมด้วย Python/R, และเครื่องมือเฉพาะทาง ในบรรดาวิธีเหล่านี้ ผมขอยกให้ Power BI เป็นวิธีที่ตอบโจทย์ที่สุด ทั้งฟรี ง่าย และเร็วอีกด้วย เราสามารถสร้าง Sankey chart ได้ในเวลาอันสั้นโดยไม่ต้องเขียนโค้ด นอกจากนี้กราฟที่สร้างโดย Power BI ยังปรับแต่งได้ง่ายและสามารถเชื่อมโยงกับข้อมูลในตารางอื่นได้อีกด้วย

หลังอ่านบทความนี้จบ คุณจะสร้าง Sankey chart เท่ ๆ ขึ้นมาได้แน่นอน

บทความนี้เป็นบทความจาก Content Creator
เขียนโดย ญาณวุฒิ คิมนารักษ์
บรรณาธิการ ตรวจสอบโดย ศิระ เอกบุตร (เทพเอ็กเซล)
กลั่นมาจากความคิดทั้งสองคน จึงมั่นใจได้ในความถูกต้องมากขึ้นไปอีกครับ

1. เตรียมข้อมูล

ข้อมูลที่จะใช้สร้าง Sankey chart จะต้องมี 3 คอลั่มนี้

1. nodes ต้นทาง หรือจุดเริ่มต้น (Source)

2. nodes ปลายทาง หรือจุดหมาย (Destination)

3. การเชื่อมต่อ (Link) สิ่งที่จะเป็นความหนาของเส้นที่เชื่อมระหว่าง node ต้นทางและปลายทาง เช่น จำนวนคนที่เข้าชมเวปหน้า 1 แล้วกดไปต่อหน้า 2, จำนวนนักท่องเที่ยวที่เดินทางจากประเทศ A ไป B ซึ่งคอลั่ม Link ไม่มีก็ได้ โดยความหนาของเส้นที่เชื่อม node จะหนาเท่ากันหมด

วิธีสร้าง Sankey chart ด้วย Power BI 3

ชุดข้อมูลตัวอย่างที่ผมใช้ในบทความนี้เป็นข้อมูบจำนวนผู้โดยสารที่เดินทางจากประเทศหนึ่ง (Source) ไปยังอีกประเทศหนึ่ง (Destination) โดย Link คือคอลั่ม Passenger ที่บอกจำนวนผู้โดยสาร โดยผมบันทึกข้อมูลนี้เป็นไฟล์ Excel ชื่อ passenger

บางท่านอาจจะสงสัยว่า ถ้าข้อมูลที่มีไม่ได้อยู่ในรูปแบบที่พร้อมจะสร้าง Sankey chart ที่มี 3 คอลั่มแบบที่ผมบอก เราจะเปลี่ยนให้อยู่ในรูปแบบที่เหมาะสมได้ยังไง

ผมขอยกตัวอย่างเป็นข้อมูลการเข้าชมหน้าเวปไซต์ของลูกค้าแต่ละคน ข้อมูลนี้บอกว่าลูกค้าเข้าไปดูแต่ละหน้าในวันที่เท่าไรบ้าง

วิธีสร้าง Sankey chart ด้วย Power BI 4

จากข้อมูลนี้ เราต้องแปลงให้เป็นการเปลี่ยนจาก 1 แถวเป็นลูกค้า 1 คนให้เป็นการเปลี่ยนหน้าเวปไซต์ก่อนซึ่งจะสรุปได้เป็น 5 รูปแบบตามตารางด้านล่าง

วิธีสร้าง Sankey chart ด้วย Power BI 5

จากนั้นให้เรานับกว่ามีลูกค้ากี่คนที่มีการเปลี่ยนแปลงหน้าเวปตามนี้เพื่อสร้างเป็นคอลั่ม Link คอลั่มสุดท้ายซึ่งผมตั้งชื่อคอลั่มนี้ว่า Count user ในขั้นตอนนี้ใช้สูตร Excel มาช่วยนับก็ได้เช่นกัน จากตัวอย่างนี้จะสร้างเป็นตารางได้ตามด้านล่าง

วิธีสร้าง Sankey chart ด้วย Power BI 6

เท่านี้ข้อมูลก็มีหน้าตาสำหรับนำไปสร้าง Sankey chart แล้ว

ข้อมูลพร้อมแล้วได้เวลาเปิดโปรแกรม Power BI ใครยังไม่มีโปรแกรม Power BI ไป download จาก เวป official ได้เลย

คลิกที่แท็บ Home ด้านบนเลือก Get data แล้วเลือก Excel workbook

แท็บ Home  > Get data > Excel workbook

จากนั้นเลือกไฟล์ passenger.xlsx ที่เตรียมไว้แล้วกด Open

วิธีสร้าง Sankey chart ด้วย Power BI 7

หน้า Navigator จะเด้งขึ้นมาให้ติ๊กถูกหน้า Sheet 1 ที่มีข้อมูลอยู่ แล้วกด Load

วิธีสร้าง Sankey chart ด้วย Power BI 8

หลังโหลดเสร็จถ้ามีชื่อ Sheet 1 ขึ้นที่แถบ Data ด้านขวาแสดงว่าตอนนี้ข้อมูลเราถูดโหลดมาเก็บไว้ที่ไฟล์ Power BI และพร้อมนำไปแสดงเป็นกราฟแล้ว

วิธีสร้าง Sankey chart ด้วย Power BI 9

2. ดาวน์โหลด Sankey chart จากตลาดกราฟ

Sankey chart ไม่ใช่กราฟมาตรฐานใน Power BI แต่นั่นไม่ใช่ปัญหาเพราะ Power BI มีตลาดกลางที่รวบรวมกราฟหลากหลายประเภทเอาไว้ซึ่งเราสามารถเข้าไปดาวน์โหลดมาใช้งานได้

ในแถบ Visualizations ด้านขวามือ คลิกที่จุดสามจุดและเลือก “Get more visuals”

แถบ Visualizations > จุด 3 จุด > “Get more visuals”

วิธีสร้าง Sankey chart ด้วย Power BI 10

หน้าจอตลาดที่รวบรวมกราฟเอาไว้จะเด้งขึ้นมา ให้เราพิมพ์ค้นหา Sankey Chart โดยพิมพ์หลังแว่นขยายมุมขวาบน จากนั้นคลิกที่ผลิตภัณฑ์ Sankey Chart (เช็คให้ดีว่าเป็นแบบเดียวกับที่แสดงในภาพด้านล่าง) จากนั้นคลิก Add

ค้นหา Sankey Chart > เลือก Sankey Chart > Add

วิธีสร้าง Sankey chart ด้วย Power BI 11
วิธีสร้าง Sankey chart ด้วย Power BI 12

ถ้าทำตามขั้นตอนจะเห็นไอคอน Sankey เพิ่มขึ้นมาในแถบ Visualizations พร้อมให้เราใช้งาน

วิธีสร้าง Sankey chart ด้วย Power BI 13

3. สร้าง Sankey chart

ถึงเวลาที่ทุกคนรอคอย มาสร้าง Sankey chart กันเถอะ

คลิกที่ไอคอน Sankey ในแถบ Visualizations

กราฟเปล่าจะโผล่ขึ้นมา

วิธีสร้าง Sankey chart ด้วย Power BI 14

ในแถบ Data ด้านขวามือ ลาก 3 คอลัมน์ที่จะใช้สร้าง Sankey chart ไปที่แถบ Visualization (ถ้าไม่เห็นชื่อคอลั่มให้คลิกที่ลูกศรหน้า S้heet 1) คอลัมน์เหล่านี้ต้องลากไปที่ Source, Destination, และ Weight ให้ถูกต้อง (Weight ต้องเป็นตัวเลขและ Weight สามารถเว้นว่างไว้ได้ซึ่งจะทำให้เส้นเชื่อมจาก Source ไป Destination ทุกเส้นหนาเท่ากัน)

วิธีสร้าง Sankey chart ด้วย Power BI 15

เท่านี้ Sankey chart ก็ถูกสร้างขึ้นอย่างสวยงามแทนที่กราฟเปล่าในตอนแรก

วิธีสร้าง Sankey chart ด้วย Power BI 16

กราฟนี้เราจะเห็นการจำนวนผู้โดยสารที่เดินทางระหว่างประเทศ ยิ่งมีผู้โดยสารมากเส้นทางนั้นยิ่งหนาขึ้น หลังจากนี้เราก็สามารถดูกราฟแล้ววิเคราะห์ได้แล้วว่าเราควรเสริมการเดินทางที่เส้นทางไหนหรือเราควรโปรโมทเส้นทางไหนเพิ่มถ้าอยากให้มีผู้โดยสารมากขึ้น

คลิกไอคอน Sankey > ลากคอลั่ม

4. ปรับแต่ง Sankey chart

Sankey มีลูกเล่นให้เราปรับการแสดงผลได้

– เปลี่ยนขนาดแผนภูมิ

ลากมุมหรือด้านข้างตรงที่เป็นสีเทาเข้ม

วิธีสร้าง Sankey chart ด้วย Power BI 17

– แสดงชื่อ Link (Source-Destination) 

แถบ Visualizations > Data link labels On

วิธีสร้าง Sankey chart ด้วย Power BI 18
วิธีสร้าง Sankey chart ด้วย Power BI 19

เลือก Sankey chart จากนั้นในแถบ Visualizations คลิกที่ไอคอน Format your Visual แล้วคลิกให้ Data link labels เป็น On เท่านี้ก็จะเห็นข้อความบน Link ของ Node ที่เชื่อมต่อกัน ส่วนตัวผมไม่ค่อยแสดงชื่อ Link เพราะมันดูรก และกราฟนี้ก็อ่านง่ายอยู่แล้ว

– เปลี่ยนสี Node และ Link

แถบ Visualizations > Links/Nodes > เลือกสี

วิธีสร้าง Sankey chart ด้วย Power BI 20

ปรับแต่งสีของแต่ละ Node และ Link ได้โดยการไปที่แถบ Visualization คลิกที่ไอคอน Format your Visual แล้วคลิกลูกศรข้าง LInks หรือ Nodes อยากปรับสีที่ LInk หรือ Node ไหนก็กดที่ Node หรือ Link นั้นแล้วเลือกสีที่ต้องการได้เลย


ก่อนจบบทความขอแนะนำเรื่องการใช้ Sankey chart บน Power BI ไว้สักหน่อย

  1. ไม่แนะนำให้ใช้ Sankey chart กับข้อมูลมากกว่า 10,000 แถว โปรแกรมอาจค้างได้
  2. Node ต้นทางกับ Node ปลายทางห้ามมีการสวนทางกัน เช่น ถ้ามี France ไป Morocco ห้ามมี Morocco ไป France ไม่งั้นจะเกิดการ loop และกราฟจะ Error

เห็นมั้ยครับว่าการสร้าง Sankey chart บน Power BI นั้นไม่ยากเลย เพียง 10 นาทีกราฟของคุณก็พร้อมสำหรับการนำเสนอและเสริม data story telling แล้ว