Phoenixmap Visualization

Overview

This project implements the visualization method described in the paper "Phoenixmap: An Abstract Approach to Visualize 2D Spatial Distributions" by Zhao et al. [1]. The Phoenixmap approach identifies the enclosed outline of a point collection and assigns varied widths to outline segments based on the density of the corresponding inside regions. This represents a 2D distribution as an abstract outline with varied thicknesses, enabling the overlay of multiple distributions for comparison across categories or time periods.

Phoenixmap Screenshot

Usage

Phoenixmap is designed to perceive and compare spatial distribution data efficiently while freeing up graphical space. Unlike traditional heatmaps, the concise form of the Phoenixmap allows designers to overlap multiple outlines on a single map without causing the same level of visual clutter.

This implementation utilizes yearly data of the following datasets:

The following configuration variables are exposed to tune the visualization:

Sidebar Configuration

How to Use

The program features an interactive sidebar for real-time configuration of the Phoenixmap ribbons:

Inputs

To create the visualization, the system requires the following inputs:

Project Implementation

The project source code is hosted at https://gitlab.tuwien.ac.at/e193-02-visvu-students/visvu-2025-Zhao-etal-2021-Milla-Dancea The program uses a Flask backend for computations, including coordinate projections and the concave hull algorithm, and D3.js for the visual projection, using css and html for styling and structure.

Sources