# Ambient Datascapes - Sonification with Sonic Pi

**URL:** <https://in-thread.sonic-pi.net/t/ambient-datascapes-sonification-with-sonic-pi/1119>\
**Category:** Creations & Ideas\
**Created:** [May 14, 2018, 11:16pm UTC](https://in-thread.sonic-pi.net/t/ambient-datascapes-sonification-with-sonic-pi/1119 "2018-05-14T23:16:49Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![marc](https://avatars.discourse-cdn.com/v4/letter/m/8dc957/32.png) [@marc](https://in-thread.sonic-pi.net/u/marc)\
**Post date:** [May 14, 2018, 11:16pm UTC](https://in-thread.sonic-pi.net/t/ambient-datascapes-sonification-with-sonic-pi/1119/1 "2018-05-14T23:16:49Z")

</div>

Some sonification work done in Sonic Pi for analyzing univariate distributions of Portuguese red wine data. Creates a nice ambience; you can listen in the background while doing yoga or something…

[![](https://img.youtube.com/vi/2LZb_aQo8jo/hqdefault.jpg "Ambient Datascapes - Red Wine Sonification") ](https://www.youtube.com/watch?v=2LZb_aQo8jo)

In short it normalizes data parameters like ‘ph’ and ‘alcohol’ then maps them to pitch, amplitude, and pan, creating chord clusters. Parameter information is sent over OSC to Processing which displays the data from a folder of images.

> **[soundslikedata/Red-Wine-Sonification](https://github.com/soundslikedata/Red-Wine-Sonification)**
>
> documentation of ongoing data perceptualization techniques and research deliverables - soundslikedata/Red-Wine-Sonification

I found Sonic Pi (and ruby) to be quite enjoyable to work with in this context because its built in structures help maintain a tonal aesthetic in the final result. I initially tried this in SuperCollider, and although more flexible/powerful, the results just didn’t sound as nice.

Hopefully this furthers the discussion on the use of Sonic Pi for data sonification, and maybe opens up some compositional doors for those who are interested.

---

<div class="post-metadata">

**Author:** ![ds604](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/ds604/32/422_2.png) [@ds604](https://in-thread.sonic-pi.net/u/ds604)\
**Post date:** [May 14, 2018, 11:30pm UTC](https://in-thread.sonic-pi.net/t/ambient-datascapes-sonification-with-sonic-pi/1119/2 "2018-05-14T23:30:15Z")

</div>

excellent work, building off the classic data visualization work by UB40

the ph balance of a slightly different character from the prior “Neil Diamond” dataset

---

<div class="post-metadata">

**Author:** ![kegunder](https://avatars.discourse-cdn.com/v4/letter/k/b5a626/32.png) [@kegunder](https://in-thread.sonic-pi.net/u/kegunder)\
**Post date:** [May 17, 2018, 1:57pm UTC](https://in-thread.sonic-pi.net/t/ambient-datascapes-sonification-with-sonic-pi/1119/3 "2018-05-17T13:57:10Z")

</div>

I like this work. I’ve been wanting to do this for some bioinformatics data recently. Thanks very much for sharing.

Can you comment on the .pde code? It looks like its making ggplot2 graphs but I’m unfamiliar with the details.

Thanks again!

---

<div class="post-metadata">

**Author:** ![marc](https://avatars.discourse-cdn.com/v4/letter/m/8dc957/32.png) [@marc](https://in-thread.sonic-pi.net/u/marc)\
**Post date:** [May 18, 2018, 7:08pm UTC](https://in-thread.sonic-pi.net/t/ambient-datascapes-sonification-with-sonic-pi/1119/4 "2018-05-18T19:08:28Z")

</div>

Hi Kegunder,

Thanks for your interest and the nice comments. For the processing code the implementation is really simple - just an image folder of png’s that are conditionally displayed based on a string sent via OSC. The .pde sketch is based off of @robin.newman’s video tutorial found here: [https://www.youtube.com/watch?v=w89G0dN2BM0](https://www.youtube.com/watch?v=w89G0dN2BM0)

This was my first time doing any work in Processing so I’m still unfamiliar with it’s capabilities. ggplot2 seems like a great suggestion that I will have to explore.
