
Introduction
มี Visualization ชนิดหนึ่งที่นิยมนำมาวิเคราะห์และแสดงผล อันดับ (Ranking) เช่น การแสดงอันดับที่เปลี่ยนแปลงตามช่วงเวลา เราเรียกรูปแบบ Visualization แบบนี้ว่า “Bump Chart“ บทความนี้จะแนะนำถึงวิธีการสร้าง Bump Chart บนโปรแกรม Tableau Desktop ซึ่งสามารถทำได้ไม่ยากเกินไป เพียงแต่ท่านอาจจะต้องเคยใช้งาน Tableau มาบ้างเล็กน้อย หรือเคยอบรมการใช้งาน Tableau เบื้องต้นมาบ้าง (คลิ๊กที่นี่ หลักสูตรอบรม Tableau Desktop I-Fundamental)
หลังจากท่านอ่านและทดลองสร้าง Visualization ตามบทความนี้ ท่านจะสามารถสร้าง Visualization หรือ Dashboard ที่มีลักษณะดังนี้ (ท่านสามารถคลิ๊กทดลองใช้ Dashboard จริงนี้ได้ที่ท้ายบทความ)
Analytics
ผู้เขียนต้องการวิเคราะห์ข้อมูลนักท่องเที่ยวต่างชาติที่เดินทางเข้าประเทศไทย โดยใช้ข้อมูลจำนวนนักท่องเที่ยวต่างชาติที่เดินทางเข้าประเทศไทยระหว่างปี ค.ศ. 2010 – ค.ศ. 2016 จำนวน 7 ปี โดยผู้เขียน Download ข้อมูลจาก Web Site ตาม Link นี้ครับ https://data.world/payapdatasci/thai-tourism
ตัวอย่างข้อมูลมีลักษณะดังรูป คือมีจำนวน 5 Column แต่มีจำนวน Row เป็นจำนวนมาก
สมมุติว่าเราต้องการรู้ว่า region ใดในโลกที่เดินทางเข้ามาไทยมากที่สุด และ region ที่ได้อันดับ 1 นั้น ได้อันดับ 1 ทุกปีหรือไม่ หรือว่ามีการเปลี่ยนแปลงอันดับอย่างไรบ้าง เบื้องต้นผู้เขียนจึงนำข้อมูลดิบมา Summarize เป็นตารางสรุปข้อมูลนักท่องเที่ยวตาม region และ ตาม year ดังรูป
ตารางข้างต้นมีตัวเลขเต็มไปหมด ถ้าหากเรา Focus ในปีแรก เราจะพบว่าในปี 2010 region=ASEAN มีนักท่องเที่ยวอันดับ 1 ตามมาด้วย อันดับ 2 Europe และอันดับ 3 EstAsia คำถามที่อยากรู้คือ region ที่ได้อันดับ 1, 2, 3 ในปีแรกนั้น ได้อันดับเดียวกันในปีที่เหลือหรือไม่? ถ้าไม่ใช่ แล้วมีการเปลี่ยนแปลงอันดับอย่างไรบ้าง? ความจริงเราก็สามารถตอบคำถามนี้ได้โดยใช้สายตา และสมองในการหาคำตอบ แต่คงต้องใช้เวลาระดับหนึ่งเลยทีเดียว
แล้วเราจะสร้าง Visualization เพื่อตอบคำถามเหล่านี้แบบไหนดี? นี่เป็นที่มาของการสร้าง Bump Chart ครับ
การสร้าง Bump Chart
หลัการ คือ ใช้เทคนิค Table Calculation ในการคำนวณ + การสร้าง Chart แบบ Combination Chart
วิธีการ
- เปิดโปรแกรม Tableau Desktop ทำการ Connect Data
- สร้าง Calculated Field คือ Index โดยใส่สูตร Index()
- ลาก Field 3 Field คือ Year ไปวางที่ Columns, Index ไปวางที่ Rows และ Region ไปวางที่ Detail ดังรูป
- Click ขวาที่ Index (ที่อยู่บน Rows) แล้วเลือก “Edit Table Calculation” จากนั้นทำการ Configuration ดังรูป ขั้นตอนนี้เป็นขั้นตอนที่สำคัญที่สุด คือการกำหนดให้ Field Index มีการคำนวณ Table Calculation ตามที่เราต้องการสร้าง Bump chart
- Click ขวาที่แกน Y (Index) เลือก Edit Axis จากนั้น Flag ที่ Reversed ดังรูป
- ทำการ Duplicate Filed Index บน Rows โดยการกดปุ่ม Ctil ค้างไว้ แล้วทำการ Drag and Drop Field Index ไปวางไว้ข้าง ๆ กัน
- มาถึงขั้นตอนนี้ ท่านจะได้ View ที่มีลักษณะดังรูป จะสังเกตว่าท่านมี Mark Index และ Index (2) ดังที่ Highlight
- ทำ Dual Axis เพื่อให้ Index(2) ไปอยู่บนแกนขวามือ โดยการ click ขวาที่ Index (ด้านขวา) แล้วเลือก Dual Axis
- click ขวาที่ Index (ด้านขวา) แล้วเลือก Synchronize Axis เพื่อให้มีการเรียงลำดับเหมือนกับแกนด้านซ้ายมือ
- ไปที่ Mark Card, click Index และ Drag and Drop Field Region มาไว้ที่ Color จากนั้นเลือก Mark Card ที่ Index(2) เปลี่ยน Mark Type เป็น Circle และ Drag and Drop Field Region มาไว้ที่ Color ดังรูป
- สำเร็จ! มาถึงขั้นตอนนี้ ท่านจะได้ View ที่มีลักษณะดังรูป ซึ่งนี่คือ Bump Chart ที่เราต้องการ
- สร้าง Dashboard เพื่อให้การแสดงข้อมูลสมบูรณ์ยิ่งขึ้น โดย Dashboard นี้ประกอบด้วย 3 Views
- View1 คือ Bump Chart ที่เราสร้างกันมา โดยวาง Bump Chart ไว้ตรงกลาง
- View2 คือ กราฟแสดง Ranking นักท่องเที่ยวในปี 2010 วางไว้ซ้ายมือของ Bump Chart
- View2 คือ กราฟแสดง Ranking นักท่องเที่ยวในปี 201ุ6 วางไว้ขวามือของ Bump Chart
“เสร็จเรียบร้อยแล้วครับ!
แดชบอร์ดที่แสดงอยู่ข้างล่างนี้ ท่านสามารถคลิ๊กทดลองใช้ได้ หรือจะดาวน์โหลดไปเพื่อศึกษาเพิ่มเติมได้ โดยกดที่ปุ่มสัญญลักษณ์ดาวน์โหลดที่มุมล่างขวาของแดชบอร์ด และทาง AiTeam ได้แชร์ Dashboards นี้ไว้บน Tableau Public ให้กับทุกท่านที่สนใจที่นี่
Additional Exercise
ท่านอาจจะทำการวิเคราะห์ลงในระดับประเทศ (แทน Region) แต่เนื่องจากประเทศทั่วโลกมีจำนวนมาก ดังนั้นเราอาจจะจำกัดเฉพาะประเทศ 10 อันดับแรกเท่านั้น ท่านสามารถ Modify Dashboard เดิมเพื่อให้ได้ผลตามที่ต้องการ ดังตัวอย่างแดชบอร์ดด้านล่างนี้ และทาง AiTeam ได้แชร์ Dashboard Bump Chart by Country นี้ไว้บน Tableau Public ที่นี่