Space shortcuts
Space Tools
Skip to end of metadata
Go to start of metadata

TimeAlign: Exploratory Visual Analysis Plugin for Temporal Events  

Contributed by the Human-Computer Interaction Lab at the University of Maryland, College Park
      Authors: Taowei David Wang, Ben Shneiderman, Catherine Plaisant
      Related Project: Lifelines2


The TimeAlign plugin for i2b2 is a visual analysis tool for temporal categorical data for multiple patient records. It visualizes multiple patients' medical history. Each history contains a set of relevant categorical events (ex. diagnosis, prescription, intervention, room change, admission, discharge, etc). TimeAlign displays the records and their events in a linear, zoomable timeline that allows investigators to quickly grasp the temporal relationships of important events.


TimeAlign lets investigators explore the data via its simple but powerful interaction mechanisms. At the heart of it is the Align-Rank-Filter (ARF) framework. Investigators can align all patients by an important event and discover how other events are related to it. For example, by aligning patients by their first heparin exposure, investigators can examine if the event of low-platelet reading occur more frequently as a potential signal for heparin-induced thrombocytopenia. Ranking, for example, can order patients by the number of low-platelet reading events. Finally, filtering lets investigators to narrow down patient population by event characteristics: show only patients with at least three exposures of heparin (filter by event count), or show patients who have never had a surgical procedure followed by heparin exposure followed by low-platelet count (filter by an event sequence).

In addition, distribution of events over time can be shown. Groups of patients can be created via filtering. Distribution of groups can be compared. All these features let investigators visualize and interact with the data, explore potentially interesting temporal relationships, formulate hypotheses, and hopefully discover new findings.

History and Lifelines2

i2b2's TimeAlign plugin originates from the Lifelines2 project in the Human-computer Interaction Lab in the University of Maryland at College Park. Lifelines2 was part of the doctoral dissertation by Taowei David Wang, under the supervision of Ben Shneiderman and Catherine Plaisant. Taowei has since graduated and is now part of the broader i2b2 team, creating other plugins for the i2b2 platform.

Selected Publications for Lifelines2

Visit Lifelines2 for more papers and other related projects.

Download and Setup

Prerequisite: i2b2 Workbench 1.5 or above.

  1. Download the TimeAlign plugin (.jar).
  2. Place the downloaded .jar file in your i2b2 workbench's workbench/plugins directory (picture).
  3. Launch your i2b2 Workbench and log in. Select from menu: Window -> Show View -> Other... -> Align-in-time Category -> Align-in-time View to launch TimeAlign. If you do not see Align-in-time Category, please read on.
  4. Make sure your i2b2workbench.properties file contains the following line. (Picture) (Where to find i2b2workbench.properties?)


  5. Make sure your configuration file workbench/configuration/config.ini contains only the following. You can safely replace the content of your file with the following.

    #Product Runtime Configuration File


Video Demonstration


TimeAlign Getting Started video


Older LifeLines2 videos from HCIL




.mp4 (download size: 81.4MB)


.swf (view in browser, where Flash Player is required)


Run Time






Demonstrates how to
1. launch TimeAlign
2. create data via i2b2's query services
3. navigate around timeAlign's basic features


Scenario 1: Identifying potential patients with contrast-related nephropathy.

Scenario 2: Investigating heparin-induced thrombocytopenia.

  • No labels

1 Comment

  1. I am experiencing a problem where the timealign will not render when a lab value concept is used with an operator that contains an "=" .  Example: when "A1c >=12" is specified in the model and click render the timeAlign never returns, but when "A1c > 12" is specified the timeAlign works fine.