Cualquier serie de datos puede convertirse en una melodía musical ya que cada nota musical de esa melodía puede identificarse con un número de una serie numérica concreta. En la actualidad los softwares y los instrumentos musicales comparten la codificación MIDI para poder emparejar música y números de una manera standard. En la figura 1 se puede ver la correspondencia entre números y notas musicales que se usa en dicha codificación MIDI.

Figura 1. Relación entre notas musicales y números en la codificación MIDI ( las notas C, D, E…. se corresponden con las notas Do, Re, Mi…. Donde las primeras están en notación musical anglosajona y las segundas en notación latina)
Para poder convertir los datos en una pieza musical necesitamos un software con el que podamos programar la música correspondiente. En mi caso yo he usado Sonic Pi (https://sonic-pi.net/) con el que de manera muy sencilla podemos programar música mediante el uso de scripts que se pueden escribir en formato texto simple. Un script básico para este software sería por ejemplo (https://sonic-pi.net/files/articles/Live-Coding-Education.pdf) :
play 70
sleep 1
play 75
sleep 0.5
play 82
sleep 1
Donde “play” es la instrucción con la que se toca una nota concreta cuyo número MIDI se escribe tras la instrucción y donde “sleep” es un tiempo de duración del mantenimiento de esa nota y que es proporcional al “tempo” de la melodía (https://es.wikipedia.org/wiki/Tempo ), tempo que se ajusta con la instrucción “use_bpm” . El tempo representa la velocidad a la que se ejecutará la pieza musical expresada en “beast per minute” . De esta manera, para crear una composición musical a partir de una serie de números o datos con el software Sonic Pi, lo único que hay que hacer es convertir estos datos en los números MIDI de las instrucciones play consecutivas de un script texto que posteriormente el software Sonic Pi ejecutará.
Mis datos de partida fueron la serie de las medidas de temperaturas del aeropuerto de Vitoria que se pueden obtener en este link http://weather.uwyo.edu/surface/meteorogram/europe.shtml . Estos datos (http://e-ao.org/Apuntes/data_musica.xlsx ) se corresponden con las medidas de temperatura tomadas cada media hora desde las 19:00 UTM del día 15 de noviembre de 2019 hasta las 19:30 UTM del día siguiente.
Para convertir en una melodía cualquier serie de números o datos (como son en nuestro caso la serie de los valores de temperaturas) es preciso utilizar algún algoritmo que transponga cada valor de temperatura (nuestros datos) en una nota MIDI. Este algoritmo debe tener en cuenta los valores máximos y mínimos de la serie, así como la elección de una octava musical adecuada para ejecutar la pieza musical resultante con un sonido que nos sea agradable (por ejemplo los de las octavas centrales 5 o 6). El algoritmo usado en mi caso fue el siguiente:
Nota_musical= [(g/max-min)*(temp-min)]+cero (1)
Donde:
g= Factor para acomodar el máximo y el mínimo de las notas al máximo y el mínimo de las temperaturas (en nuestro caso g=9)
max y min : Temperaturas máxima y mínima de la serie
temp= Temperatura que se quiere convertir en una nota
cero= Valor MIDI de la nota musical de base que se corresponderá con la Temperatura mínima ( en nuestro caso se eligió 65 – nota F de la octava 5 – )
Este algoritmo se construyó por tanteo tras varios ensayos previos. Evidentemente este algoritmo no puede ser usado de manera general ya que cada serie de datos particular debería ser convertida en una melodía mediante el uso de un algoritmo propio que consiga el mejor resultado musical posible.
Para convertir la serie de temperaturas en la pieza musical final se ha usado un script desarrollado en R (https://www.r-project.org/) y que implementa el algoritmo (1) anteriormente descrito. Este script se puede obtener en http://e-ao.org/Apuntes/prog_datos_melod.txt
Mediante este programa en R se puede convertir la serie de valores de temperatura en un archivo texto simple (script) ejecutable desde Sonic Pi. Nuestro script de base era un conjunto de instrucciones play y sleep consecutivas en el que se habían transformado los números de la serie de temperaturas en una melodía escrita con el código numérico MIDI. La figura 2 representa el inicio de este script Sonic Pi.

Figura 2. Parte inicial del script Sonic Pi obtenido con los datos de temperaturas y el programa R de transformación de números en notas MIDI
Este script, con la melodía básica, se modificó añadiéndole algunos detalles rítmicos de sonidos de batería y de bajos, para así obtener un script final de Sonic Pi que sonara de manera agradable ( http://e-ao.org/Apuntes/musica_final3.txt ) . El resultado se grabó con el mismo software Sonic PI en formato WAV, formato que luego se convirtió a MP3. La pieza musical completa final se puede obtener en este link http://e-ao.org/Apuntes/musica_final.mp3
Finalmente para editar un video donde se puedan ver los datos de manera animada junto a la música creada ( http://e-ao.org/Apuntes/video_datos_f.mp4 ) podremos usar PowerPoint para crear el video. A este video le añadiremos la música mediante un editor de videos cualquiera (en mi caso yo usé Power Director) pero siempre teniendo en cuenta que hay que adecuar la duración de la animación a la duración de la música.
En PowerPoint la animación se consigue abriendo una diapositiva donde se pega la gráfica Excel correspondiente a los datos y luego se utiliza el menú de la pestaña de ANIMACIONES, donde tras marcar y señalar la gráfica insertada, se eligen las opciones adecuadas (Figura 3). Finalmente con el menú ARCHIVO del propio PowerPoint exportaremos el fichero a un formato MP4. El video así generado se puede editar con cualquier editor de videos y agregarle la música creada.

Figura 3. En la pestaña ANIMACIONES de PowerPoint, y tras marcar la gráfica a animar proveniente de Excel, se pueden elegir las opciones que nos interesen (en nuestro caso Barrido y Duración 26.00 segundos) para obtener el video final. El PowerPoint de esta animación se encuentra en este link http://e-ao.org/Apuntes/animacion_datos.pptx