Visualizing Time-Oriented Data

CS-GY 6313 - Fall 2025

Claudio Silva

2025-11-14

Introduction

Based on materials by Enrico Bertini enrico.bertini@nyu.edu NYU Tandon School of Engineering

What is Temporal Data?

Definition: Data in which values depend on time and time is explicitly recorded.

In other words: we track when things happened or what values were at specific points in time

Example: Temporal Dataset Structure

Image

Why is this temporal data?

  • DAT and TIME columns explicitly record when events occurred
  • Each row represents an incident/event at a specific location and time
  • Can analyze patterns: when, where, and how frequently events happen

Application Domains

  • Business
  • Natural Phenomena
  • Behaviors/Movement
  • Traffic/Mobility
  • Medical/Healthcare
  • Finance

Type 1: Event Data

Time + Object (Attributes)

“Something happened at time T”

Examples: Tweet, Email, Alarm

Type 2: Measurement Data

Time + Measure(s)

“This is the value at time T”

Examples: Temperature, revenue, stock value

Temporal Information Components

Time = Position + Interval + Granularity

  • Position: When did it occur? (specific timestamp)
  • Interval: For how long? (duration)
  • Granularity: At what scale? (seconds, hours, days, years)

Example: A meeting starts at 2:00 PM (position), lasts 90 minutes (interval), measured in minutes (granularity)

Time Structures

Three key structures for temporal data:

  1. Sequential - Linear progression over time
  2. Cyclic - Repeating patterns (daily, weekly, seasonal)
  3. Hierarchical - Nested time resolutions (year/month/day)

Key insight: Most real temporal data has ALL THREE structures simultaneously!

Sequential and Cyclic Patterns

Sequential

(Jan 1, … , Dec 31)

Cyclic

(S, M, T, W, T, F, S)

Hierarchical Time Resolutions

Multiple Resolutions

  • Years
  • Months
  • Weeks
  • Days
  • Hours

Linking Data Types to Time Structures

Event Data

Time + Object (Attributes)

  • Sequential: Transaction logs over years
  • Cyclic: User logins by day of week
  • Hierarchical: System alerts by hour/day/month

Measurement Data

Time + Measure(s)

  • Sequential: Stock prices over time (line charts)
  • Cyclic: Temperature patterns by season
  • Hierarchical: Revenue by year/quarter/month

Key Insight: Data type + time structure → visualization choice

Aggregation Trade-offs

Benefits of Aggregation

  • Reduces noise
  • Shows overall trends
  • Manageable data size
  • Clearer patterns

Example: Daily → Monthly averages reveals seasonal trends

Risks of Aggregation

  • Masks short-term events
  • Loses extreme values
  • Can hide critical peaks
  • Simpson’s Paradox

Example: A 1-hour server outage disappears in monthly view

Design principle: Choose granularity based on the questions you need to answer

Warning: This is Simpson’s Paradox for temporal data - aggregation can completely reverse or hide patterns!

Example: Sales Over Time - Sequential View

Sequential: “How did our sales change over the years?”

Image

Example: Sales Over Time - Cyclic View

“How does the number of orders change by day of the week?”

Image

Hierarchical Structure and Resolution

Combining multiple time resolutions in one view

Time Resolution: Sequential Views

Different temporal granularities reveal different patterns in sequential data

Image

Image

Time Resolution: Cyclic Views

Choosing the right resolution (hourly, daily, weekly) affects what patterns emerge

Image

Image

Example: Nesting Cyclic (Day) within Sequential (Year)

Each row = one year, columns = days of week, showing how daily patterns evolve annually

Image

Example: Nested Time Patterns (Quarterly)

Days within weeks within quarters - revealing both micro and macro patterns

Image

Visualization Methods

Line charts, area charts, and their variations

Line Charts: Time + Quantity

The fundamental temporal visualization: position encodes both time (x) and values (y)

Image

Aspect Ratio

How chart dimensions affect perception

Definition: Aspect Ratio = Width / Height

Impact on Trend Visibility

Different ratios make trends more or less visible

Image

Perceptual Principle: Slope Judgment

Key finding: Humans judge slopes most accurately at 45°

  • Too shallow (<< 45°): Hard to distinguish small differences
  • Too steep (>> 45°): Also difficult to compare
  • Optimal: ~45° - Maximum perceptual sensitivity

This principle guides aspect ratio selection

Banking to 45°

Method: Set aspect ratio so that the average slope is 45°

Ensures trends are perceptually salient and comparable

Example: Banking to 45° Comparison

Same data, different aspect ratios - which reveals patterns best?

Image

Image

Image

Best Practice

Rule of thumb: Always test different aspect ratios to see which one best conveys your message

Multiple Line Charts: Adding Categories

Encoding categorical data with color/line style to compare multiple time series

Image

The “Spaghetti Plot” Problem

It does not scale!

Image

Solutions for Multiple Lines

Possible Solutions … 1. Grouping 2. Filtering/Focus 3. Highlighting

Comparison: Grouping, Filtering, Highlighting

Original

Filtering

Grouping

Highlighting

Small Multiples

Small Multiple Line Charts and Area Charts

Example: Small Multiple Line Charts

Separate panels for each series - easier to see individual patterns

Image

Example: Small Multiple Area Charts

Area encoding helps emphasize magnitude while maintaining separate views

Image

Area Charts for Proportions

Useful to depict proportion changes over time

Image

Stacked Area Charts: Limitations

“Baseline Bias” - only the baseline layer is easy to read accurately

Problem: Temporal trends for upper layers are hard to interpret because they don’t share a common baseline

Image

Image

Normalized Stacked Area Charts

Image

Interaction Techniques

Critical for exploring temporal data

Why Interaction Matters for Temporal Data

Challenge: Time series data is often too large or complex to understand in a single static view

Solution: Interactive techniques allow users to:

  • Navigate through time (zoom, pan)
  • Focus on specific patterns or events
  • Link multiple views for comparison
  • Dynamically adjust aggregation levels

Zoom and Pan

Purpose: Navigate dense sequential time series

Semantic Zoom

  • Change level of detail
  • Hourly → Daily → Monthly
  • Preserve context

Geometric Zoom

  • Magnify visual space
  • See more detail
  • Focus + context techniques

Example: Stock chart with overview + detail panes

Filtering and Brushing

Filtering: Show/hide data based on criteria

  • Time range selection
  • Category filtering (e.g., show only certain products)
  • Threshold filtering (e.g., values > X)

Brushing: Select data in one view, highlight in others

  • Temporal brushing: Select time range, see corresponding events
  • Linked views: Brush on map → highlight in timeline

Brushing & Linking Example

View 1: Geographic map

User brushes (selects) a region

View 2: Time series

Corresponding temporal data highlights automatically

Power: Discover spatio-temporal patterns (e.g., “Sales peak in Region A during Q4”)

Dynamic Aggregation

Interactive granularity control

Users adjust time resolution on-the-fly:

  • Slider: “Show me data aggregated by: Hour / Day / Week / Month”
  • Drill-down: Click on a month → see daily breakdown
  • Roll-up: Aggregate noisy hourly data to daily averages

Advanced: Time-series bagging, dynamic binning for very long series

Time Warping and Distortion

Fisheye/distortion:

  • Focus region shows detail
  • Context regions compressed
  • Maintains overview while examining specifics

Time-warping:

  • Align periodic patterns despite phase shifts
  • Dynamic time warping (DTW) for comparing similar patterns
  • Useful for comparing multiple time series with lag

Best Practices for Interaction Design

  1. Provide overview first: Show full temporal extent
  2. Progressive disclosure: Start simple, reveal detail on demand
  3. Maintain context: Always show where you are in time
  4. Link multiple views: Connect temporal, spatial, and categorical views
  5. Smooth transitions: Animate changes to maintain mental model
  6. Direct manipulation: Let users interact with the visualization itself

Event Data Visualization

Visualizing discrete events and durations

Types of Event Data

Timestamp + Event Properties

  • Incidents
  • Activity Logs
  • Messages (Emails, Chats, etc.)

Example: Dot Plot for Events

Each dot = one event, position = time, rows = categories

Image

Example: Proportional Symbols

Symbol size encodes additional attributes (e.g., event magnitude or importance)

Image

Events with Duration

How do you visualize events that have duration?

Gantt Charts

Horizontal bars show event start, duration, and end times

Image

Example: Gantt Chart

Project management: showing task dependencies and overlaps

Image

Example: System Activity Monitoring

Tape drives and servers: visualizing concurrent processes and resource usage

Image

Alternative Visualizations

Heat maps and real-world examples

Heat Maps for Temporal Data

Matrix representation: Time units as rows/columns, color encodes values

Think of it as: A table where one axis is time, the other is categories, and color shows the value

Benefits: Compact, shows patterns across multiple dimensions

Image

Example: WSJ Vaccine Impact Visualization

Image

Detail View

Zooming in reveals granular patterns in measles cases by state over decades

Image

Example: FT European Football Visualization

Goals scored over careers - heat map shows performance patterns across age/seasons

Image

How to read this visualization:

  • X-axis: Player’s age
  • Y-axis: Individual players (one row per player)
  • Length: Career duration
  • Color: Goal-scoring rate (darker = more goals)

Dense but information-rich: shows career trajectories and productivity over time

Periodic Patterns

Calendars, radial layouts, and spirals

Understanding Periodicity

Often the focus is on investigating and presenting periodical patterns:

  • Yearly, seasonal, monthly
  • Weekly, daily, hourly

Alternative Approaches

Beyond line charts: What are other solutions for periodic data?

Image

Calendar-Based Visualizations

Key difference from heat maps: Time is laid out by day-of-week and month structure

  • Heat maps: Linear/vertical time progression
  • Calendar views: Explicit cyclic layout (7-day weeks, 12 months)
  • Better for revealing weekly/seasonal patterns

Image

Calendar Variations

Different ways to encode values: size, color intensity, or position within cells

Image

Image

Radial Layouts for Periodic Data

Periodic phenomena are cyclical. Radial layouts can reduce temporal discontinuities

Spiral Plots

Key insight: Spirals show BOTH cycles AND progression simultaneously

  • Cycles: Annual patterns repeat at the same angle
  • Progression: Long-term trend shows as spiral expanding/contracting outward

Image

Spiral Example: Temperature Data

Annual cycles spiral outward - revealing both seasonal patterns and long-term trends

Image

Climate Spiral Visualization

Famous example: Global temperature anomalies spiraling toward crisis thresholds

Image

Caution: Radial Layout Limitations

Use circular layouts with care!

Research finding: Humans are significantly slower and less accurate at judging radial distances and angles compared to linear position

Comparing values radially is harder than in Cartesian space - use only when cyclical nature is essential

Comparison: Linear vs Radial

Image

Image

Scalable Visualizations

Horizon charts and sparklines for dense temporal data

Horizon Charts

Purpose: Maximum data density with minimal height

Allows comparison of many time series in limited vertical space

Image

Horizon Charts: Multiple Series

Dozens of time series in the space where only a few line charts would fit

Image

How Horizon Charts Work: Step 1

Start with a standard area chart

Image

Step 2: Discretizing into Bands

Divide values into equal-height bands (e.g., 0-1, 1-2, 2-3)

Image

Step 3: Flipping Negative Values

Mirror negative values above the baseline (differentiated by color/saturation)

Image

Step 4: Collapsing Bands

Stack all bands on top of each other using color intensity to show magnitude

Image

Image

Final Result: Horizon Chart

Compact visualization preserving temporal patterns in minimal vertical space

Image

Sparklines

“Small, intense, word-sized graphics with typographic resolution. Sparklines can be placed anywhere that words or numbers can be: in sentences, maps, graphics, tables.”

— Edward Tufte

Image

Sparklines in Context

Embedded in text and tables - data becomes part of the narrative

Image

Image

Sparkline Examples

Real-world applications in dashboards and reports

Image

Image

Alternative Encodings

Beyond position: animation, color, and trajectories

When Position is Already Used

All methods so far use space to represent time.

What if position is already taken (e.g., maps)?

Three Alternative Encodings

Animation

Show changes over time through motion

Color

Use color/saturation to encode time

Trajectories

Draw paths showing movement

Caution: Animation Limitations

While animation can be effective, it has significant drawbacks:

Cognitive Limitations:

  • Limits working memory - hard to remember previous frames
  • Difficult to compare non-adjacent time points
  • Requires replay to catch missed details

Best Practices:

  • Provide playback controls (pause, rewind, speed)
  • Keep animations short (< 10 seconds)
  • Combine with static “key frames”
  • Consider small multiples instead of animation

Summary

Key Topics Covered

  1. Structure of temporal data (linear, cyclic, hierarchical)
  2. Line charts and variations (area charts, small multiples)
  3. Heat maps/grids, calendars, circular layouts
  4. Event data (dot/bubble charts, gantt)
  5. Scalable visualizations: horizon, sparklines

Key Takeaways

Design guidelines:

  • Consider time structure (sequential, cyclic, hierarchical)
  • Be cautious with stacked designs (hard to read upper layers)
  • Test different aspect ratios for line charts
  • Use circular layouts carefully (harder to compare values)
  • Choose the right technique for the data density

Key References (1/2)

  • Taxonomy of timeline visualizations
  • The TimeViz Browser
  • Visualizing time-oriented data—A systematic view
  • Visualizing pedestrian data
  • Cloudlines visualization method for event data
  • Banking to 45 degrees explained
  • Banking to 45 degrees: Aspect ratios for time series plots
  • The Shape Parameter of a Two-Variable Graph (original paper on banking to 45 degrees)
  • An Empirical Model of Slope Ratio Comparisons (follow-up work on banking to 45 degrees)
  • Quantitative Displays for Combining Time-Series and Part-to-Whole Relationships
  • Stacked area chart vs. Line chart – The great debate
  • The Fine Line In a Gray Area: When to Use Line vs Area Charts
  • Climate spirals (great example of use of spirals)
  • Enhanced interactive spiral display
  • Spirals for periodic data
  • Interactive Visualization of Serial Periodic Data
  • Visualizing Time-Series on Spirals
  • Explanation of Horizon charts
  • User study on effectiveness of Horizon Charts

Key References (2/2)

  • Visualizing Time with the Double-Time Bar Chart | Doug McCune
  • Visualizing Cyclical Time – Hour of Day Charts | Doug McCune
  • Visual analytics techniques for time series data
  • On the Benefits and Drawbacks of Radial Diagrams | SpringerLink
  • Visualizing Time with the Infinity Hour Chart | Doug McCune

Thank You!

Image