Coda.io - Statystyki dla wydarzeń kalendarza Google
W poprzednim wpisie wykonałem integracje kalendarza google z dokumentem wzorCoda. Wykorzystując tą integrację pobiorę wszystkie wydarzenia z kalendarza do Coda.io, a następnie dokonam ich analizy. Chcę osiągnąć informacje na temat:
- Ile czasu spędzam na spotkaniach (w rozbiciu miesięcznym, tygodniowym, dziennym)
- Z kim najczęściej się spotykam
- Ile w kalendarzu jest moich własnych spotkań – czyli rezerwacji czasu na dane zadania
Temat jest prosty i będzie to jeden z łatwiejszych wpisów 🙂
Rozpoczynam od utworzenia nowych podstron: Kalendarz oraz statystyki kalendarza.
Rozpoczynam od utworzenia nowych podstron: Kalendarz oraz statystyki kalendarza.
Na potrzeby projektu wzorCoda utworzyłem dedykowany kalendarz o nazwie “wzorCoda”, teraz przygotuje nowe zakładki pod dane z tego kalendarza:
- Potrzebuję utworzyć w tabeli wydarzeń nowe kolumny, które będą przechowywać dane na temat numeru tygodnia i miesiąca dla każdego wydarzenia. Dodatkowo kolumna przechowująca informacje o czasie trwania. CIekawym aspektem była zmiana kalkulacji daty końcowej, minus data początkowa i konwersja wyniku do formatu liczbowego:
(docelowo nowe kolumny nie będą widoczne) - Na tej podstawie tworzę 3 alternatywne widoki tabeli, które będą osobnymi wykresami na karcie statystyk:
W ustawieniach każdego wykresu wybieram odpowiednio kolumny: dzień, tydzień, miesiąc w zależności od tego czego dotyczy wykres. Dla osi Y wartościami zawsze będzie to co znajduje się w kolumnie “czas trwania” - Mam wykresy, które w określonych przedziałach czasowych pokazują czas zajęty w kalendarzu. Bazując na filtrach mogę tutaj odrzucać dane, których nie chce brać pod uwagę w wykresie. Na ten moment odrzuciłem wszystkie wydarzenia oznaczone w kalendarzu jako “całodniowe”.
- Tworzę również nową tabelę do której w każdym wierszu wstawię pojedynczego uczestnika zaproszonego do spotkania. Aby to wykonać konieczne było przejście przez wszystkie wydarzenia i stworzenie z osobnych list zaproszonych, jednej wspólnej listy (poprzez łączenie list). Następnie wykorzystując funkcję usuwania duplikatów uzyskałem listę osób występujących w moim kalendarzu. Dla wyświetlenia w każdym wierszu tabeli jednej pozycji, najłatwiej jest utworzyć kolumnę z numerem uczestnika i uzupełnić liczbami rosnąco, aby wyświetlać kolejną osobę z listy.
- Słowem wyjaśnienia, dlaczego konieczny jest taki zabieg łączenia list:
Google zwraca dla każdego wydarzenia osobną listę uczestników, a w przypadku braku osób zaproszonych daje pustą listę. Przy takich danych dla każdego spotkania otrzymujemy osobną listę zawierającą informacje o uczestnikach. Aby móc usuwać duplikaty, konieczne jest wcześniejsze połączenie wszystkich list w jedną listę inaczej każda lista jest osobnym elementem i usuwanie duplikatów zidentyfikuje jako duplikat tylko spotkania, o takim samym składzie zaproszonych - Posiadając już gotową tabelę z uczestnikami, tworzę standardowo alternatywny widok wykresu dla wizualizacji tych danych.
- Finalnie widok dwóch wypracowanych sekcji wygląda jak poniżej:
- Po wykresie kołowym już mam pierwsze wnioski: w moim kalendarzu znajdują się spotkania wstawione przeze mnie w formie “przypomnienia” = nie zapraszam w takich spotkaniach nikogo (dlatego w liście uczestników istnieje puste pole). Takie spotkania są brane pod uwagę w wykresach dziennych, tygodniowych i miesięcznych, co fałszuje dane. Jest też opcja, że w niektórych zdarzeniach jest tylko jeden adres mailowy, co nie jest spotkaniem, a rezerwacją czasu na wykonanie konkretnej czynności. Dlatego tworzę alternatywne widoki wykresów, które dzięki filtrowaniu nie uwzględniają spotkań, w których uczestników jest mniej niż dwóch.
- Do dopracowania jest aspekt tabeli z unikalnymi uczestnikami spotkań. Ilość wierszy w tabeli jest stała.i wymaga ręcznej aktualizacji polegającej na dodaniu nowych wierszy i uzupełnieniu kolumny “numer uczestnika”. Żeby to wyeliminować stworzę przycisk, który po kliknięciu, będzie czyścił tabelę do zera i tworzył automatycznie nowe wiersze w tabeli do ilości dokładnie takiej ile osób należy wprowadzić.
- Button umieszczam nad tabelą. Dzięki tej modyfikacji mogę usunąć kolumnę “numer uczestnika” oraz wysortować kolumnę “Czas spotkania” malejąco:
Pozostaje dopracować widok podstron w dokumencie rozdzielając statystyki uczestników spotkań od statystyk czasowych
Na koniec przetestowałem całość podpinając kalendarz, który używam na codzień. Dwa kliknięcia i wszystkie tabele i wykresy wyświetliły informacje z innego kalendarza ukazując ciekawe dane 🙂
