The Beauty of Data

for 
Polar

Project description
Revealing the hidden beauty of personal data. A data visualization art project with personal customization - designed exclusively for the launch of the Polar Ignite 3 watch. This project visualizes characteristics and activities as a unique artwork, using data captured by the watch. It makes it possible to express every heartbeat, every step we take, and every minute we sleep. The project highlights nuances in the data to create a personal artwork that tells the story of each individual. The project focused on shaping the story of three different people through data points recorded close to the launch.

Project resolution
Racecar and K. Benzi created proposals for design and animation directions to create an art project that would be a key element in the launch of the Polar Ignite 3 watch. The circle was chosen as a design element to tell the story of circadian rhythms and mirror Polar products. Interviews were conducted with three people to gain insights into their personalities and the period that was recorded, and the result was summarized in color and form language. Deviating color scales were put together to easily decode the data.

Two major technical processes started afterwards:

• Collection and processing of over 2 million data points per user (including AI analysis where data points were missing)

• Design and assembly of a robust 3D system with a responsive user interface that could efficiently update data. This was important as the visual expression, including colors and form language, evolved in parallel with the 3D system and adjusted up to the deadline.

Credits

Design & Direction

Racecar

Art Direction

Racecar
Kirell Benzi

3D Data Conversion

Racecar

Raw Data Conversion

Kirell Benzi
Olaf Dünkel

Project manager

Jake Hillman
Jose Tirado

Strategic Adviser

Seema Sharma

Consultant

Ben Dekovel
Milan Berg

Agency

Edelman

up
document.addEventListener("DOMContentLoaded", function dumpDups() { const rr = new Set(); for (const div of document.querySelectorAll(".ClientList")) { if (rr.has(div.textContent.trim())) { div.parentNode.removeChild(div); } rr.add(div.textContent.trim()); } dumpDups(); });