สารบัญ
Sankey chart คืออะไร
Sankey chart หรือ Sankey diagram เป็นกราฟยอดนิยมที่หลายคนน่าจะเคยเห็นผ่านตามาบ้างเวลาแสดงการไหลของข้อมูลจากจุดเริ่มต้นหลายตำแหน่งไปยังปลายทางอีกหลายตำแหน่งเช่นเดียวกัน
ตัวอย่างการใช้ 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 จะหนาเท่ากันหมด
ชุดข้อมูลตัวอย่างที่ผมใช้ในบทความนี้เป็นข้อมูบจำนวนผู้โดยสารที่เดินทางจากประเทศหนึ่ง (Source) ไปยังอีกประเทศหนึ่ง (Destination) โดย Link คือคอลั่ม Passenger ที่บอกจำนวนผู้โดยสาร โดยผมบันทึกข้อมูลนี้เป็นไฟล์ Excel ชื่อ passenger
บางท่านอาจจะสงสัยว่า ถ้าข้อมูลที่มีไม่ได้อยู่ในรูปแบบที่พร้อมจะสร้าง Sankey chart ที่มี 3 คอลั่มแบบที่ผมบอก เราจะเปลี่ยนให้อยู่ในรูปแบบที่เหมาะสมได้ยังไง
ผมขอยกตัวอย่างเป็นข้อมูลการเข้าชมหน้าเวปไซต์ของลูกค้าแต่ละคน ข้อมูลนี้บอกว่าลูกค้าเข้าไปดูแต่ละหน้าในวันที่เท่าไรบ้าง
จากข้อมูลนี้ เราต้องแปลงให้เป็นการเปลี่ยนจาก 1 แถวเป็นลูกค้า 1 คนให้เป็นการเปลี่ยนหน้าเวปไซต์ก่อนซึ่งจะสรุปได้เป็น 5 รูปแบบตามตารางด้านล่าง
จากนั้นให้เรานับกว่ามีลูกค้ากี่คนที่มีการเปลี่ยนแปลงหน้าเวปตามนี้เพื่อสร้างเป็นคอลั่ม Link คอลั่มสุดท้ายซึ่งผมตั้งชื่อคอลั่มนี้ว่า Count user ในขั้นตอนนี้ใช้สูตร Excel มาช่วยนับก็ได้เช่นกัน จากตัวอย่างนี้จะสร้างเป็นตารางได้ตามด้านล่าง
เท่านี้ข้อมูลก็มีหน้าตาสำหรับนำไปสร้าง Sankey chart แล้ว
ข้อมูลพร้อมแล้วได้เวลาเปิดโปรแกรม Power BI ใครยังไม่มีโปรแกรม Power BI ไป download จาก เวป official ได้เลย
คลิกที่แท็บ Home ด้านบนเลือก Get data แล้วเลือก Excel workbook
แท็บ Home > Get data > Excel workbook
จากนั้นเลือกไฟล์ passenger.xlsx ที่เตรียมไว้แล้วกด Open
หน้า Navigator จะเด้งขึ้นมาให้ติ๊กถูกหน้า Sheet 1 ที่มีข้อมูลอยู่ แล้วกด Load
หลังโหลดเสร็จถ้ามีชื่อ Sheet 1 ขึ้นที่แถบ Data ด้านขวาแสดงว่าตอนนี้ข้อมูลเราถูดโหลดมาเก็บไว้ที่ไฟล์ Power BI และพร้อมนำไปแสดงเป็นกราฟแล้ว
2. ดาวน์โหลด Sankey chart จากตลาดกราฟ
Sankey chart ไม่ใช่กราฟมาตรฐานใน Power BI แต่นั่นไม่ใช่ปัญหาเพราะ Power BI มีตลาดกลางที่รวบรวมกราฟหลากหลายประเภทเอาไว้ซึ่งเราสามารถเข้าไปดาวน์โหลดมาใช้งานได้
ในแถบ Visualizations ด้านขวามือ คลิกที่จุดสามจุดและเลือก “Get more visuals”
แถบ Visualizations > จุด 3 จุด > “Get more visuals”
หน้าจอตลาดที่รวบรวมกราฟเอาไว้จะเด้งขึ้นมา ให้เราพิมพ์ค้นหา Sankey Chart โดยพิมพ์หลังแว่นขยายมุมขวาบน จากนั้นคลิกที่ผลิตภัณฑ์ Sankey Chart (เช็คให้ดีว่าเป็นแบบเดียวกับที่แสดงในภาพด้านล่าง) จากนั้นคลิก Add
ค้นหา Sankey Chart > เลือก Sankey Chart > Add
ถ้าทำตามขั้นตอนจะเห็นไอคอน Sankey เพิ่มขึ้นมาในแถบ Visualizations พร้อมให้เราใช้งาน
3. สร้าง Sankey chart
ถึงเวลาที่ทุกคนรอคอย มาสร้าง Sankey chart กันเถอะ
คลิกที่ไอคอน Sankey ในแถบ Visualizations
กราฟเปล่าจะโผล่ขึ้นมา
ในแถบ Data ด้านขวามือ ลาก 3 คอลัมน์ที่จะใช้สร้าง Sankey chart ไปที่แถบ Visualization (ถ้าไม่เห็นชื่อคอลั่มให้คลิกที่ลูกศรหน้า S้heet 1) คอลัมน์เหล่านี้ต้องลากไปที่ Source, Destination, และ Weight ให้ถูกต้อง (Weight ต้องเป็นตัวเลขและ Weight สามารถเว้นว่างไว้ได้ซึ่งจะทำให้เส้นเชื่อมจาก Source ไป Destination ทุกเส้นหนาเท่ากัน)
❗ ต้องกดเลือกกราฟเปล่าก่อนลากคอลัมน์นะ
เท่านี้ Sankey chart ก็ถูกสร้างขึ้นอย่างสวยงามแทนที่กราฟเปล่าในตอนแรก
กราฟนี้เราจะเห็นการจำนวนผู้โดยสารที่เดินทางระหว่างประเทศ ยิ่งมีผู้โดยสารมากเส้นทางนั้นยิ่งหนาขึ้น หลังจากนี้เราก็สามารถดูกราฟแล้ววิเคราะห์ได้แล้วว่าเราควรเสริมการเดินทางที่เส้นทางไหนหรือเราควรโปรโมทเส้นทางไหนเพิ่มถ้าอยากให้มีผู้โดยสารมากขึ้น
คลิกไอคอน Sankey > ลากคอลั่ม
4. ปรับแต่ง Sankey chart
Sankey มีลูกเล่นให้เราปรับการแสดงผลได้
– เปลี่ยนขนาดแผนภูมิ
ลากมุมหรือด้านข้างตรงที่เป็นสีเทาเข้ม
– แสดงชื่อ Link (Source-Destination)
แถบ Visualizations > Data link labels On
เลือก Sankey chart จากนั้นในแถบ Visualizations คลิกที่ไอคอน Format your Visual แล้วคลิกให้ Data link labels เป็น On เท่านี้ก็จะเห็นข้อความบน Link ของ Node ที่เชื่อมต่อกัน ส่วนตัวผมไม่ค่อยแสดงชื่อ Link เพราะมันดูรก และกราฟนี้ก็อ่านง่ายอยู่แล้ว
– เปลี่ยนสี Node และ Link
แถบ Visualizations > Links/Nodes > เลือกสี
ปรับแต่งสีของแต่ละ Node และ Link ได้โดยการไปที่แถบ Visualization คลิกที่ไอคอน Format your Visual แล้วคลิกลูกศรข้าง LInks หรือ Nodes อยากปรับสีที่ LInk หรือ Node ไหนก็กดที่ Node หรือ Link นั้นแล้วเลือกสีที่ต้องการได้เลย
ก่อนจบบทความขอแนะนำเรื่องการใช้ Sankey chart บน Power BI ไว้สักหน่อย
- ไม่แนะนำให้ใช้ Sankey chart กับข้อมูลมากกว่า 10,000 แถว โปรแกรมอาจค้างได้
- Node ต้นทางกับ Node ปลายทางห้ามมีการสวนทางกัน เช่น ถ้ามี France ไป Morocco ห้ามมี Morocco ไป France ไม่งั้นจะเกิดการ loop และกราฟจะ Error
เห็นมั้ยครับว่าการสร้าง Sankey chart บน Power BI นั้นไม่ยากเลย เพียง 10 นาทีกราฟของคุณก็พร้อมสำหรับการนำเสนอและเสริม data story telling แล้ว