Implementation

1.0 Get the Data

1.1 Initially, we had hoped to access the data "live"

This was not possible - so the rest of the presentation/demo will be with a static file.

We'll talk about the cloud access at the end.

Our Focus became how incorporate user input, flexibility, and choice within visualizations.

We will be creating time series charts, so date (which comes in as a string) needed to be converted to "date" format

2.0 User selections

2.1. Filter by user selected time frame

The user can input a starting and ending date

2.2. Aggregate by user selected aggregation

The user can select how they would like to aggregate the data by choosing a time interval (minute, day, week, month).

2.3. Filter by User Selected Attributes

Each user selection filters the original dataset

2.4.1 userTidy reorganizes the data for use in time series chart:

2.4.2 "parCoordData" has a column for each attribute (works better for Parallel Coordinates)

2.4.3 The "Times", "time_first" and "time_last" variables are set up in order to identify start and end dates from the main datafile ("joined_files2"). These values ("time_first" and "time_last") are shared with the user. They are also used as "min" and "max" values within the selection input so that the user doesn't choose a date that is out of range.

3.0 Plot Data

3.1

Design Description

3.2 Chart

3.2.1 Date Ranges for Current Static Dataset

3.3 Parallel Coordinates

4.0 Download Your Dataset
Cloud Data in Observable

Information from Observable (https://observablehq.com/@observablehq/introduction-to-data)

"That's great - but StREAM Lab manages their data in the cloud (Google Drive) - Can Observable access data on the cloud?"

Short answer: Yes!

https://observablehq.com/@observablehq/cloud-files

Fine Print: Not Really!

Publishing notebooks with cloud files is not supported. This means that it is not possible for multiple users to use the notebook when data is accessed dynamically.

There are solutions available to access dynamic data. However, they are all outside the scope of this project: