Tableau היא תוכנה שמאפשרת לעשות כמעט הכל. היא מודולרית וגמישה מאוד למשתמש המנוסה. עם זאת, אחד הנושאים שמתסכלים דאטה אנליסטים שאינם מנוסים בעבודה עם Tableau הוא עיצוב Dashboard Layout.
בפוסט זה אציג כמה Best practices הקשורים לבניית דשבורדים, אסביר את העקרונות על פיהם טבלו יוצר את הדשבורד, אסביר על ההבדל בין הוספת אלמנטים Fixed לFloating, אציג את רעיון השימוש בקונטיינרים ואת מנגנון ההיררכיה של טבלו.
מה הוא דשבורד ומה הם אובייקטים?
בהנחה ואנחנו כבר יודעים ליצור ויזואליזציה בסיסית בטאבלו, עולה השאלה מה הוא בעצם דשבורד ולמה אנחנו צריכים אותו? דשבורד הוא אוסף של ויזואליזציות וViews שונים שמטרתם הצגת זוויות שונות של הדאטה באותו זמן. אידיאלית, בונה הדשבורד יבנה אותו על מנת לספר סיפור מסויים. במקרים מסויימים ניצור דשבורד למטרת תחקור וניטור של הדאטה. בין אם תחקור מתמשך או חד פעמי. במקרים אחרים ניצור את הדשבורד על מנת להעביר את המסקנות של אנליזה אחת, ללא חשיבות לניטור מתמשך.
Tableau מאפשר יצירה של דשבורד בצורה מאוד אינטואיטיבית בעזרת מנגנון Drag and Drop. דמיינו שהדשבורד בטאבלו הוא מעין קנבס ריק אותו נמלא בויזואליזציות השונות שיצרנו באמצעות גרירת הSheets למקומות הרצויים על גבי הקנבס. עד כאן נשמע מצויין. איפה הבעיה? טאבלו כופה על המשתמש המתחיל הגדרות ברירת מחדל מסויימות. במידה ואנחנו צריכים שהדשבורד יעוצב בצורה קצת אחרת מברירת המחדל, אנחנו עלולים להיתקל בבעיה. כדי לעצב דשבורד בהתאם לצרכים הייחודיים שלנו, נצטרך להכיר את עקרונות הLayout של Tableau.
ישנן הרבה דרכים להסביר מהם העקרונות הנכונים ליצירת Layout אפקטיבי ונוח לשימוש, אני אתמקד בשלושת העיקריים:
- גודל הדשבורד.
- שיטות הסידור של טבלו – Tiled and Floating.
- היררכיית האובייקטים בדשבורד.
הכרה של שלושת העקרונות הללו, תאפשר לכם לבנות דשבורדים בקלות ובמהירות.
גודל הדשבורד
טבלו מאפשר לשלוט בהגדרת הגודל שיוצג למשתמש בדשבורד שלכם בצורה דינמית או סטטית. ניתן להגדיר את הגודל על ידי לחיצה כאן:
טבלו תומך בשלושה סוגי הגדרות של גודל:
- Fixed – הגדרת ברירת המחדל של טבלו. גודל הדשבורד ישאר אחיד, ללא קשר למסך בו הוא מוצג. כלומר, אם תבנו את הדשבורד ברוחב של מסך 22 אינץ', הוא יוצג למשתמש בדיוק באותו הגודל גם אם המסך שלו הוא מסך 15.6 אינץ'. במקרה שמדובר במסך שלא מכיל את גודל הדשבורד, תתאפשר גלילה מטה ומעלה או שמאלה וימינה.
- Automatic – טבלו יזהה לבד מה גודל המסך של המשתמש ויתאים את גודל הדשבורד לגודל המסך. לרוב, עלול 'למעוך' או 'למתוח' ויזואליזציות בניסיון להתאימן לגודל המסך.
- Range – מעין אופציה 'חצי אוטומטית'. מאפשר לקבוע טווח מינימום וטווח מקסימום לגודל הדשבורד. מעל לגודל מסויים הדשבורד לא ינסה להתאים עצמו למסך, מתחת לגודל מסויים תתחיל אפשרות גלילה.
למה זה חשוב? אם המטרה שלכם היא להציג את הויזואליזציות השונות במקביל, דעו שכשמשתמש יצפה בדשבורד במסך קטן, הוא עלול לא לראות הכל בעת ובעונה אחת ויאלץ לגלול כדי לראות את כל הדשבורד.
Tableau לא מציינים Best Practice יחיד להגדרת גודל הדשבורד. הם משאירים את שיקול הדעת לנו כמפתחים. זאת האחריות של היוצר להבין מי המשתמשים בדשבורד ובאיזה דרך הם ישתמשו בו. אתן דוגמא עם הUse Case שלי משום שאני מאמין שהוא מאוד נפוץ: המשתמש הסטנדרטי שיצפה בדשבורדים שלי ככל הנראה יעשה זאת על מסך מחשב שנפוץ במקומות עבודה (כ22 אינץ') או על גבי מסך קצת קטן יותר, של לפטופ (כלומר, כ15 אינץ'). אני לא רואה תרחיש בו משתמשים יבחרו לעשות זאת על גבי טאבלט או סמארטפון. אם אצלכם בארגון ישנם משתמשים שצופים בדשבורדים במסכים קטנים, תאלצו לעשות התאמות. אחת הדרכים יכולה להיות שימוש בהגדרת גודל דינמית (Automatic או Range).
אני מאמין שהמצב שהכי חשוב להימנע ממנו, הוא בניית דשבורד גדול מידי שמצריך גם גלילה למעלה ולמטה וגם גלילה ימינה ושמאלה. לכן, בהתאם להנחות היסוד שפירטתי לגבי המשתמשים שלי, בדר"כ אבחר Fixed size מסוג Generic Desktop ולאחר מכן אגדיל רק את אורך הדשבורד בהתאם לצורך. כלומר, בהתאם לכמות האובייקטים שאני צריך להכניס לדשבורד. בהתאם להגדרת הגודל הזה, הגלילה תהיה תמיד מטה ומעלה אך לא שמאלה וימינה.
סידור האובייקטים על גבי הדשבורד
סידור בFloating לעומת סידור בTiles
כאמור, טבלו מאפשר הוספה של ויזואליזציה מSheets לתוך הדשבורד על ידי גרירה מצד שמאל אל החלל הריק במרכז. טבלו תומך בשתי שיטות סידור האובייקטים על הדשבורד:
השיטה הראשונה, שמהווה גם ברירת המחדל של טבלו, היא שיטת Tiled (ריצוף). בשיטה זו, כמו בהרכבת פאזל, אובייקטים יסתדרו אחד לצד השני אך לא יוכלו לדרוס אחד את השני או להיות אחד על גבי השני.
השיטה השנייה לסידור אובייקטים היא שיטת Floating. בניגוד לשיטת הריצוף, כאן האובייקטים יהיו חופשיים וניתן יהיה להניח אותם בכל מקום בדשבורד, גם אם זה אומר שהם יונחו על גבי אובייקטים אחרים.
ניתן לשלב בין שתי השיטות כך שנכניס שני Sheets שונים בשיטת ריצוף ועל גביהם נוסיף ויזואליזציות נוספות. ממש כמו בדוגמא למטה.
קונטיינרים והיררכיה
פיצ'ר חשוב נוסף שיעזור לנו לסדר את הויזואליזציות במרחב הוא אובייקטים מסוג קונטיינרים (Containers). קיימים 3 סוגיים עיקריים: מאוזן (Horizontal), מאונך (Vertical) וריק (Blank). נוכל להשתמש באובייקטים אלה כדי לכפות הפרדה בין אזורים בדשבורד שבתוכם יונחו הויזואליזציות מהSheets השונים. טבלו מאפשר להכניס קונטיינר אחד לתוך קונטיינר שני וכך ליצור תת הפרדות.
בדוגמא שבתמונה למטה, ניתן לראות שימוש בקונטיינר מסוג מאונך ובתוכו קונטיינר מסוג מאוזן. כך נוצרה חלוקה פנימית אליה ניתן לגרור את הויזואליזציות שבSheets השונים. לחיצה על טאב הLayout יאפשר לראות את ההיררכיה של האובייקטים השונים שבדשבורד. הבנה של איפה אובייקט יושב בהיררכיה יעזור מאוד להבין איך טבלו רואה את ההיררכיה ויאפשר נוחות וגמישות בעיצוב הLayout.
שימו לב שטבלו עלול ליצור 'קונטיינר' חדש בהתאם לדרך אותה אני גורר את הSheet לתוך הדשבורד ולכן חשוב להעיף מבט על ההיררכיה כדי להבין איך היא נוצרה בפועל (ראה 'איך לגרור Sheet בצורה נכונה' למטה).
נושאים נוספים
איך מאפשרים לויזואליזציה לתפוס מקום על פני כל הקונטיינר?
ברירת המחדל של טבלו אינה הכלת הויזואליזציה על פני כל הקונטיינר/חלון. לחצו בכל מקום בקונטיינר אותו תרצו להתאים והמשיכו בהתאם להוראות הללו:
איך לגרור Sheet בצורה נכונה?
טבלו מאפשר לשנות היררכיה וסוג קונטיינר על ידי גרירת Sheets למיקומים שונים בדשבורד. כלומר, על ידי גרירה למיקום 'לא נכון' אתם עלולים לעקוף את ההגדרות של עצמכם ולהפוך קונטיינר מאוזן למאונך ולהפך. אני לא בטוח שאני יודע איזה מטרה זה משרת אבל חשוב להבין את זה כשבונים דשבורד. חשוב לשים לב לאינדיקציית הצבע האפור בעת הגרירה.
איך רצוי לעבוד? נניח ויצרתם היררכיה מסויימת בעזרת קונטיינרים ואתם רוצים לשמור עליה. לדוגמא, כאן ישנה חלוקה של הדשבורד ל3 חלקים: קונטיינר מאוזן בחלק העליון ומאונך בחלק התחתון:
איך לא לגרור – כשארצה לגרור Sheet לחלק הימני העליון, טבלו יאפשר לי ליצור היררכיה אחרת ולהניח את הSheet בצורה שהופכת את הקונטיינר המאוזן למאונך:
איך כן לגרור – צריך לגרור את הSheet למיקום בו מקבלים אינדיקציה כי יתפוס את הקונטיינר המאוזן בהתאם להגדרה שלנו:
למה נוצרו לי שני אובייקטים כשגררתי ויזואליזציה שמכילה גם מקרא?
כברירת מחדל, טבלו מוסיף אובייקט נוסף כשגוררים ויזואליזציה שמכילה מקרא. לדוגמא, ניתן לראות שכשגררתי את הSheet שהכיל מפה, טבלו אוטומטית הניח את המקרא של המפה מתחת לאובייקט שמכיל את ההיסטוגרמה והמפה.
הערה – כמובן שאפשר לשנות את מיקום המקרא. אני ממליץ להפוך את המקרא לאובייקט Floating ולהניח אותו על גבי המפה.
איך אני משנה אובייקט מTiled לFloating?
סיכום
יצירת דשבורד בTableau מאפשרת הצגה של Views שונים בעת ובעונה אחת. הדשבורד הוא הפונקציה המרכזית של טבלו וככל הנראה הסיבה המרכזית בשבילה דאטה אנליסט ישתמש בכלי. המודלוריות והפונקציונלית של טבלו מדהימה, אך עם זאת היא עלולה לגרום למשתמש המתחיל להסתבך עם עיצוב דשבורד בצורה קלה ומהירה. חשוב להכיר את עקרונות יצירת דשבורד בטבלו ובמיוחד את הדרך להשפיע על הLayout.
הבנה של שלושת העקרונות המנחים ביצירת דשבורד תסייע לכם לעצב ולחלק אותו בצורה שתתאים לצרכים שלכם:
- הבינו מי המשתמשים בדשבורד והחליטו על גודל מתאים. אם בדשבורד שלכם ישתמשו בעלי מסכים מגדלים שונים, השתמשו בפיצ'ר של הגדרת גודל דינמית.
- השתמשו בקונטיינרים על מנת ליצור קווי מתאר לדשבורד וקבעו מה החלוקה הנכונה בין אובייקטים Tiled וFloating. זכרו שהקונטיינרים עלולים להשתנות גם לאחר שיצרתם אותם בעקבות גרירה 'לא נכונה' של Sheets אל הדשבורד.
- וודאו שההיררכיה שאתם דמיינתם תואמת לאיך שTableau רואה אותה באמצעות פתיחת טאב הLayout.
יש לכם עקרונות נוספים בעת יצירת דשבורד? ממש אשמח לשמוע! כתבו לי בתגובות או בדף צרו קשר!