Overview

Patterns of Life

1. Introduction

The city of Engagement, Ohio USA is anticipating future rapid growth by doing a participatory urban planning survey with 1011 representative residents. City planning team is to make sense of data provided to understand the current state of the city.

This project aims to provide an interactive web-enabled visualizations to allow users to identify and visualize the life patterns in the city in a single dashboard. Users will be able to see where the facilities are located, the busiest areas and traffic bottlenecks within the city and how the daily routines differ between two selected participants.

The application is built to integrate techniques from data analytics and data visualizations by using R shiny.

2. Data Description

Datasets were obtained from the VAST Challenge 2022 official website in csv format. They contain information of the participants as well as the facilities located within the city.

3. Methodology

The steps required in this project are as follows.

Data wrangling: To perform basic function such as joining datasets and filtering, to convert datasets into a format that can be read by R packages and to reduce the file size.

Descriptive analysis: Use appropriate static and interactive statistical graphs to show the patterns of life within the city.

Dashboarding: To compile all the graphs into an interactive dashboard.

The following are R packages required to perform the analysis and create the dashboard.

Packages Purpose
shiny, shinydashboard & shinywidgets To build interactive web application and visualizations
shinythemes To select beautiful shiny themes
tidyverse To support basic data manipulation
sf To handle geospatial data in wkt format
sftime To store and handle spatiotemporal data
tmap To visualize movement data
lubridate To manipulate date-time object
clock To manipulate date-time object
anytime To convert timestamp into parsed datetime
ViSiElse To visualize daily routines
ggstatsplot To provide statistical analysis and graphs
plotly & ggiraph To create interactive graphs
DT To create interactive data table
data.table To support aggegation of large datasets
rmarkdown To convert R markdown into desired format
ggthemes To beautify statistical graphs

4. Storyboard

4.1 City Area Characterization

Problem Statement

Assuming the volunteers are representative of the city’s population, characterize the distinct areas of the city that you identify. For each area you identify, provide your rationale and supporting data.

Visualization

This visualization divides the city into four regions and shows the outline of the different buildings as well as the location of different facilities (Apartments, Pubs, Restaurants and Schools).

Another visualization shows how the demographic attributes of the participants affect the location that they reside at.

4.2 Traffic Bottlenecks

Problem Statement

Where are the busiest areas in Engagement? Are there traffic bottlenecks that should be addressed? Explain your rationale.

Visualization

This visualization will find out peak periods of high traffic at various locations in the city by counting the footfall of participants at various participants across the day in the form of calendar heat map. Additional segregation to be done to visualize the difference between weekdays and weekends.

Furthermore, another visualization is plotted to show the traffic density heatmap of the various locations in the city via hexagon mapping, with toggles on the Time (binned), Month and Weekday/Weekend to showcase the difference in the traffic bottlenecks.

4.3 Daily Routines of Participants

Problem Statement

Participants have given permission to have their daily routines captured. Choose two different participants with different routines and describe their daily patterns, with supporting evidence.

Visualization

This visualization shows the participant profiles, followed by daily activities of two selected participants. It tells the audience how their weekdays and weekends routines vary across different months.

Click here to explore the app!