HiPiler

You are here

Visual Exploration Of Large Genome Interaction Matrices With Interactive Small Multiples

Peter Kerpedjiev

HiPiler an interactive visualization interface for the exploration and visualization of regions-of-interest in large genome interaction matrices. Genome interaction matrices approximate the physical distance of pairs of genomic regions to each other and can contain up to 3 million rows and columns with many sparse regions. Traditional matrix aggregation or pan-and-zoom interfaces largely fail in supporting search, inspection, and comparison of local regions-of-interest (ROIs). ROIs can be defined, e.g., by sets of adjacent rows and columns, or by specific visual patterns in the matrix. ROIs are first-class objects in HiPiler, which represents them as thumbnail-like “snippets”. Snippets can be laid out automatically based on their data and meta attributes. They are linked back to the matrix and can be explored interactively. The design of HiPiler is based on a series of semi-structured interviews with 10 domain experts involved in the analysis and interpretation of genome interaction matrices. In the paper we describe six exploration tasks that are crucial for analysis of interaction matrices and demonstrate how HiPiler supports these tasks. We report on a user study with a series of data exploration sessions with domain experts to assess the usability of HiPiler as well as to demonstrate respective findings in the data.

Release Date:
April, 2017
Status:
Availability:
Data type:
Techniques:
2D
Small multiples, Matrix visualization
Software:
Installed, Web based
Technology:
JavaScript (ES6 & ES7), Python
Platform:
Linux, Mac OSX, Windows
Requirements:
A running HiGlass or HiPiler server

Project development

Institution: Harvard University

HiPiler is implemented as a web application consisting of a frontend interface for the visualizations and a server-side component that provides the data. The frontend is entirely written in JavaScript utilizing Aurelia as its application framework and Redux for fine-grained, history-aware state management. The matrix snippets are visualized with WebGL using Three.js as a middleware. Finally, HiGlass is integrated as a library for displaying the interaction matrix and genomic tracks. The server-side backend serves data to HiGlass and provides the matrix snippets. The backend is implemented in Python and uses Django as its application framework. The contact matrices are accessed through Cooler, a Python-based service library for storing and querying of Hi-C data. The front and backend are two separate applications that can be decoupled to load different data types. HiPiler is open source and available on GitHub.