{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Time Dimension Gaps vs Spatial Experiment\n", "\n", "The goal of this experiment is to judge the efficiency of encoding the x-axis as a `spatial` dimension versus `time` dimension.\n", "\n", "By `time` dimension we mean leaving gaps (silences) behind sequential data points that correlate linearly in duration to the eucledian distance between the points.\n", "\n", "## Methodology\n", "\n", "- A set of graphs are sonified using `TOPH` in two distinct ways. The y-axis can either be `constant` or encoded using `pitch`.\n", "\n", "- The core idea is to encode the same graph (in y-dimension) with varying gaps between the points in the x-axis, and make the user choose from a random sampling." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ " from toph.audio.playable import Chain,SineWave, Silence, Wave\n", " from toph.audio.effect import SimplePanner\n", " from toph.audio.stage import AudioStage\n", "\n", " import matplotlib.pyplot as plt\n", "\n", " AUDIO_PATH = \"assets/ding.wav\"\n", "\n", " def ax_gen(domain, range_):\n", "\n", " do_scale = max(domain) - min(domain)\n", " ra_scale = max(range_) - min(range_)\n", "\n", " def foo(dp):\n", "\n", " dx = dp - min(domain) \n", " sdx = dx / do_scale \n", " return min(range_) + sdx * ra_scale \n", "\n", " return foo\n", "\n", " def sonify(xs, ys, x_mode, y_mode, gaps=0.5, save=None):\n", " \"\"\"\n", " \"\"\"\n", " with AudioStage() as stage:\n", "\n", " #TODO: replace with linear axis when implemented\n", "\n", " lin_ax = ax_gen(\n", " domain=(min(xs), max(xs)),\n", " range_=(-1. , +1.)\n", " )\n", "\n", " pitch_ax = ax_gen(\n", " domain=(min(ys), max(ys)),\n", " range_=(110, 880)\n", " )\n", "\n", " x_deltas = [xs[idx+1] - xs[idx] for idx in range(len(xs) - 1)]\n", " x_deltas.append(0.)\n", "\n", " gap_ax = ax_gen(\n", " domain=(min(x_deltas), max(x_deltas)),\n", " range_=(0.25 , 1.25)\n", " ) \n", "\n", " marks = []\n", "\n", " for idx, (x , y) in enumerate(zip(xs, ys)):\n", " \n", " audio_src = Wave(AUDIO_PATH) if y_mode == \"static\" else SineWave(vol = 0.85, f = pitch_ax(y), secs=0.5)\n", " if x_mode == \"spatial\":\n", "\n", " marks.extend([\n", " audio_src.add_effect(SimplePanner(dir = lin_ax(x))),\n", " Silence(secs = gaps)\n", " ])\n", "\n", " elif x_mode == \"gaps\":\n", "\n", " marks.append(audio_src)\n", " if x_deltas[idx] > 0.:\n", " marks.append(\n", " Silence(secs = gap_ax(x_deltas[idx]))\n", " )\n", "\n", " if save:\n", " stage.save(Chain(*marks), save)\n", "\n", " else:\n", " stage.play(Chain(*marks))\n", "\n", " def plot_four(datasets, idxs, y_mode, show_correct = None):\n", " fig, axes = plt.subplots(2, 2, figsize=(8, 8))\n", "\n", " for i, ax in enumerate(axes.flat):\n", " ax.scatter(datasets[idxs[i]][\"x\"], datasets[idxs[i]][\"y\"] if y_mode == \"pitch\" else [0] * len(datasets[idxs[i]][\"x\"]))\n", " ax.set_title(f\"Plot {i + 1}\")\n", " ax.grid(True)\n", "\n", " if show_correct is not None:\n", " for spine in ax.spines.values():\n", " if idxs[i] == show_correct:\n", " spine.set_linewidth(2)\n", " spine.set_color(\"green\")\n", " else:\n", " spine.set_color(\"red\")\n", "\n", "\n", " plt.tight_layout()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "datasets = [\n", " {\n", " \"x\":[0, 40, 50, 55, 90],\n", " \"y\":[10, 15, 20, 15, 10]\n", " },\n", " {\n", " \"x\":[0, 20, 40, 60, 80],\n", " \"y\":[10, 15, 20, 15, 10]\n", " },\n", " {\n", " \"x\":[0, 20, 60, 120, 240, 360],\n", " \"y\":[20, 15, 20, 15, 10, 5]\n", " },\n", " {\n", " \"x\": [0, 5, 15, 45, 135 , 405],\n", " \"y\": [12, 14, 19, 14, 11, 8]\n", " },\n", " {\n", " \"x\": [0, 20, 40, 60, 80, 100],\n", " \"y\": [15, 20, 25, 20, 15, 10]\n", " },\n", " {\n", " \"x\": [0, 60, 65, 70, 72, 74],\n", " \"y\": [10, 18, 16, 20, 15, 12]\n", " },\n", " {\n", " \"x\": [0, 2, 4, 8, 10, 90],\n", " \"y\": [8, 12, 18, 22, 18, 10]\n", " },\n", " {\n", " \"x\": [0, 25, 50, 75, 100, 125],\n", " \"y\": [20, 18, 22, 18, 14, 10]\n", " }\n", "]\n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ALSA lib pcm.c:2666:(snd_pcm_open_noupdate) Unknown PCM dsnoop:0\n", "ALSA lib pcm_dmix.c:999:(snd_pcm_dmix_open) unable to open slave\n", "ALSA lib pcm_oss.c:397:(_snd_pcm_oss_open) Cannot open device /dev/dsp\n", "ALSA lib pcm_oss.c:397:(_snd_pcm_oss_open) Cannot open device /dev/dsp\n", "ALSA lib confmisc.c:160:(snd_config_get_card) Invalid field card\n", "ALSA lib pcm_usb_stream.c:482:(_snd_pcm_usb_stream_open) Invalid card 'card'\n", "ALSA lib confmisc.c:160:(snd_config_get_card) Invalid field card\n", "ALSA lib pcm_usb_stream.c:482:(_snd_pcm_usb_stream_open) Invalid card 'card'\n", "ALSA lib pcm_dmix.c:999:(snd_pcm_dmix_open) unable to open slave\n" ] }, { "data": { "image/png": "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hFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABgJOChorCwUGlpaYqLi1NWVpZKSkqaHb9y5Uqlp6crLi5O/fv315o1a5oce9dddykiIkLz5s3z86oBAG2BHgEAHUNAQ8WKFSuUn5+vOXPmaMeOHbrsssuUk5OjiooKr+M3b96s3NxcTZw4UTt37tTIkSM1cuRI7d69+5Sxb731lrZs2aKUlJRAngIAIEDoEQDQcQQ0VDz77LOaNGmSJkyYoL59+2rRokWKj4/XK6+84nX8/PnzNXz4cE2fPl19+vTRY489piuuuEIvvPCCx7iDBw/qnnvu0dKlSxUdHR3IUwAABAg9AgA6joCFitraWpWWlio7O/tfdxYZqezsbBUXF3udU1xc7DFeknJycjzG19fX6/bbb9f06dN1ySWXBGbxAICAokcAQMcSFagDHz58WHV1dUpOTvbYnpycrE8++cTrHKfT6XW80+l0337yyScVFRWle++91+e11NTUqKamxn27urpakuRyueRyuXw+TuOcH/4X3lEn31An31An37S2TsGoa6j0CPqD/1GHBtShAXVo/zXwdd0BCxWBUFpaqvnz52vHjh2KiIjweV5BQYHmzp17yvZ169YpPj6+VWtxOBytmhduqJNvqJNvqJNvWlqn48ePB2glbas1PYL+EDjUoQF1aEAd2m8NfO0RAQsV3bt3V6dOnVReXu6xvby8XDabzescm83W7Pi//vWvqqioUK9evdz76+rqdP/992vevHn6/PPPvR531qxZys/Pd9+urq5Wamqqhg0bpoSEhBadl8vlksPh0NChQ/msbjOok2+ok2+ok29aW6fGV+fbUqj0CPqD/1GHBtShAXVo/zXwtUcELFTExMQoIyNDRUVFGjlypKSGz7oWFRUpLy/P6xy73a6ioiJNmzbNvc3hcMhu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AAAAAGCEUAEAAADACKECAAAAgBFCBQAAAAAjhAoAAAAARggVAAAAAIwQKgAAAAAYIVQAAAAAMEKoAAAAAGCEUAEAAADASMBCxZEjRzR27FglJCQoMTFREydO1HfffdfsnBMnTmjKlCnq1q2bunTpolGjRqm8vNzr2G+++UbnnnuuIiIiVFlZGYAzAAAECj0CADqWgIWKsWPHas+ePXI4HFq9erXef/99TZ48udk59913n9555x2tXLlSmzZt0qFDh3TLLbd4HTtx4kRdeumlgVg6ACDA6BEA0LEEJFTs27dPa9eu1e9//3tlZWXpmmuu0fPPP6/ly5fr0KFDXudUVVXpD3/4g5599llde+21ysjI0KuvvqrNmzdry5YtHmMXLlyoyspK/frXvw7E8gEAAUSPAICOJyChori4WImJicrMzHRvy87OVmRkpLZu3ep1TmlpqVwul7Kzs93b0tPT1atXLxUXF7u37d27V48++qhef/11RUbylRAAaG/oEQDQ8UQF4qBOp1M9e/b0vKOoKCUlJcnpdDY5JyYmRomJiR7bk5OT3XNqamqUm5ur3/3ud+rVq5c+++wzn9ZTU1Ojmpoa9+3q6mpJksvlksvl8vW03HN++F94R518Q518Q51809o6tXVdQ6lH0B/8jzo0oA4NqEP7r4Gv625RqJg5c6aefPLJZsfs27evJYdskVmzZqlPnz667bbbWjSvoKBAc+fOPWX7unXrFB8f36q1OByOVs0LN9TJN9TJN9TJNy2t0/Hjx/1yv+2xR9AfAoc6NKAODahD+62Brz2iRaHi/vvv1x133NHsmPPPP182m00VFRUe20+ePKkjR47IZrN5nWez2VRbW6vKykqPV6LKy8vdc9avX69du3bpjTfekCRZliVJ6t69ux588EGvjUFqaDT5+fnu29XV1UpNTdWwYcOUkJDQ7Pn8mMvlksPh0NChQxUdHd2iueGEOvmGOvmGOvmmtXVqfHXeVHvsEfQH/6MODahDA+rQ/mvga49oUajo0aOHevTocdpxdrtdlZWVKi0tVUZGhqSGi319fb2ysrK8zsnIyFB0dLSKioo0atQoSVJZWZkOHDggu90uSfqf//kfff/99+4527Zt05133qm//vWvuuCCC5pcT2xsrGJjY0/ZHh0d3eoH12RuOKFOvqFOvqFOvmlpnfxV0/bYI+gPgUMdGlCHBtSh/dbA1zUH5DsVffr00fDhwzVp0iQtWrRILpdLeXl5GjNmjFJSUiRJBw8e1JAhQ/T6669r4MCB6tq1qyZOnKj8/HwlJSUpISFB99xzj+x2uwYNGiRJpzSFw4cPu+/vx5+zBQCEJnoEAHQ8AQkVkrR06VLl5eVpyJAhioyM1KhRo7RgwQL3fpfLpbKyMo/PaT333HPusTU1NcrJydGLL74YqCUCAIKEHgEAHUvAQkVSUpKWLVvW5P60tDT3510bxcXFqbCwUIWFhT7dx09+8pNTjgEACH30CADoWPgl3gAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAICRqGAvIBgsy5IkVVdXt3iuy+XS8ePHVV1drejoaH8vrcOgTr6hTr6hTr5pbZ0ar4WN18ZwRn8wRx0aUIcG1KH918DXHhGWoeLo0aOSpNTU1CCvBABCx9GjR9W1a9dgLyOo6A8A4N3pekSEFYYvTdXX1+vQoUM688wzFRER0aK51dXVSk1N1ZdffqmEhIQArbD9o06+oU6+oU6+aW2dLMvS0aNHlZKSosjI8P5ULP3BHHVoQB0aUIf2XwNfe0RYvlMRGRmpc8891+gYCQkJ7fKJ0daok2+ok2+ok29aU6dwf4eiEf3Bf6hDA+rQgDq07xr40iPC+yUpAAAAAMYIFQAAAACMECpaKDY2VnPmzFFsbGywlxLSqJNvqJNvqJNvqFNwUf8G1KEBdWhAHcKnBmH5RW0AAAAA/sM7FQAAAACMECoAAAAAGCFUAAAAADBCqGiBwsJCpaWlKS4uTllZWSopKQn2koKqoKBAV155pc4880z17NlTI0eOVFlZmceYEydOaMqUKerWrZu6dOmiUaNGqby8PEgrDg1PPPGEIiIiNG3aNPc26tTg4MGDuu2229StWzd17txZ/fv31/bt2937LcvS7NmzdfbZZ6tz587Kzs7Wp59+GsQVt726ujo9/PDD6t27tzp37qwLLrhAjz32mH749TjqFBzh1CO4/nsXztd3rt9cn2XBJ8uXL7diYmKsV155xdqzZ481adIkKzEx0SovLw/20oImJyfHevXVV63du3dbH330kXX99ddbvXr1sr777jv3mLvuustKTU21ioqKrO3bt1uDBg2yrrrqqiCuOrhKSkqstLQ069JLL7WmTp3q3k6dLOvIkSPWeeedZ91xxx3W1q1brc8++8z6y1/+Yv3jH/9wj3niiSesrl27WqtWrbI+/vhj68Ybb7R69+5tff/990Fcedt6/PHHrW7dulmrV6+29u/fb61cudLq0qWLNX/+fPcY6tT2wq1HcP0/VThf37l+Nwj36zOhwkcDBw60pkyZ4r5dV1dnpaSkWAUFBUFcVWipqKiwJFmbNm2yLMuyKisrrejoaGvlypXuMfv27bMkWcXFxcFaZtAcPXrUuvDCCy2Hw2ENHjzY3XSoU4MZM2ZY11xzTZP76+vrLZvNZv3ud79zb6usrLRiY2Ot//7v/26LJYaEESNGWHfeeafHtltuucUaO3asZVnUKVjCvUeE+/U/3K/vXL8bhPv1mY8/+aC2tlalpaXKzs52b4uMjFR2draKi4uDuLLQUlVVJUlKSkqSJJWWlsrlcnnULT09Xb169QrLuk2ZMkUjRozwqIdEnRq9/fbbyszM1OjRo9WzZ09dfvnlevnll9379+/fL6fT6VGnrl27KisrK6zqdNVVV6moqEh///vfJUkff/yxPvjgA1133XWSqFMw0CO4/of79Z3rd4Nwvz5HBXsB7cHhw4dVV1en5ORkj+3Jycn65JNPgrSq0FJfX69p06bp6quvVr9+/SRJTqdTMTExSkxM9BibnJwsp9MZhFUGz/Lly7Vjxw5t27btlH3UqcFnn32mhQsXKj8/Xw888IC2bdume++9VzExMRo/fry7Ft5+DsOpTjNnzlR1dbXS09PVqVMn1dXV6fHHH9fYsWMliToFQbj3iHC//nN95/rdKNyvz4QK+MWUKVO0e/duffDBB8FeSsj58ssvNXXqVDkcDsXFxQV7OSGrvr5emZmZ+u1vfytJuvzyy7V7924tWrRI48ePD/LqQsef/vQnLV26VMuWLdMll1yijz76SNOmTVNKSgp1QlCE8/Wf63sDrt8Nwv36zMeffNC9e3d16tTplN/WUF5eLpvNFqRVhY68vDytXr1aGzZs0LnnnuvebrPZVFtbq8rKSo/x4Va30tJSVVRU6IorrlBUVJSioqK0adMmLViwQFFRUUpOTqZOks4++2z17dvXY1ufPn104MABSXLXItx/DqdPn66ZM2dqzJgx6t+/v26//Xbdd999KigokESdgiGce0S4X/+5vjfg+t0g3K/PhAofxMTEKCMjQ0VFRe5t9fX1Kioqkt1uD+LKgsuyLOXl5emtt97S+vXr1bt3b4/9GRkZio6O9qhbWVmZDhw4EFZ1GzJkiHbt2qWPPvrI/S8zM1Njx451/z91kq6++upTfiXl3//+d5133nmSpN69e8tms3nUqbq6Wlu3bg2rOh0/flyRkZ6X7k6dOqm+vl4SdQqGcOwRXP8bcH1vwPW7Qdhfn4P9TfH2Yvny5VZsbKy1ePFia+/evdbkyZOtxMREy+l0BntpQXP33XdbXbt2tTZu3Gh99dVX7n/Hjx93j7nrrrusXr16WevXr7e2b99u2e12y263B3HVoeGHvx3EsqiTZTX8OsaoqCjr8ccftz799FNr6dKlVnx8vLVkyRL3mCeeeMJKTEy0/vznP1t/+9vfrJtuuqnD/Co+X40fP94655xz3L+y8M0337S6d+9u/ed//qd7DHVqe+HWI7j+Ny0cr+9cvxuE+/WZUNECzz//vNWrVy8rJibGGjhwoLVly5ZgLymoJHn99+qrr7rHfP/999avfvUr66yzzrLi4+Otm2++2frqq6+Ct+gQ8eOmQ50avPPOO1a/fv2s2NhYKz093XrppZc89tfX11sPP/ywlZycbMXGxlpDhgyxysrKgrTa4KiurramTp1q9erVy4qLi7POP/9868EHH7RqamrcY6hTcIRTj+D637Rwvb5z/eb6HGFZP/gzfwAAAADQQnynAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgXgRxs3blRERIQ2btwY7KUAAEIMPQId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/1BL/wjXOvraI1oUKu6//37dcccdzY45//zzZbPZVFFR4bH95MmTOnLkiGw2m9d5NptNtbW1qqys9Hglqry8/JQ5e/fu1ZAhQzR58mQ99NBDp133rFmzlJ+f775dXV2t1NRUDRs2TAkJCaed/0Mul0sOh0NDhw5VdHR0i+aC+pmifmaon3eNr86bao89gv4Qeqij/1BL/wj3OvraI1oUKnr06KEePXqcdpzdbldlZaVKS0uVkZEhSVq/fr3q6+uVlZXldU5GRoaio6NVVFSkUaNGSZLKysp04MAB2e1297g9e/bo2muv1fjx4/X444/7tO7Y2FjFxsaesj06OrrVTw6TuaB+pqifGernyV+1aI89gv4Quqij/1BL/wjXOvp6zgH5onafPn00fPhwTZo0SSUlJfrwww+Vl5enMWPGuH+rx8GDB5Wenq6SkhJJUteuXTVx4kTl5+drw4YNKi0t1YQJE2S32zVo0CBJDW9n//SnP9WwYcOUn58vp9Mpp9Opr7/+OhCnAQAIAHoEAHQ8AfmitiQtXbpUeXl5GjJkiCIjIzVq1CgtWLDAvd/lcqmsrMzjc1rPPfece2xNTY1ycnL04osvuve/8cYb+vrrr7VkyRItWbLEvf28887T559/HqhTAQD4GT0CADqWgIWKpKQkLVu2rMn9aWlpsizLY1tcXJwKCwtVWFjodc4jjzyiRx55xJ/LBAAEAT0CADqWgP1FbQAAAADhgVABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAA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RGPHjlVCQoISExM1ceJEfffdd214FsHnrx574MABjRgxQvHx8erZs6emT5+ukydPtuWpBNXChQt16aWXuv+gnd1u13vvvefeTw1bjlDhoxUrVig/P19z5szRjh07dNlllyknJ0cVFRXBXlrI2bRpk6ZMmaItW7bI4XDI5XJp2LBhOnbsmHvMfffdp3feeUcrV67Upk2bdOjQId1yyy1BXHVo2rZtm/7rv/5Ll156qcd26te0b7/9VldffbWio6P13nvvae/evXrmmWd01llnucc89dRTWrBggRYtWqStW7fqjDPOUE5Ojk6cOBHElaM9o0ec3rFjx3TZZZepsLDQ635ffi7Hjh2rPXv2yOFwaPXq1Xr//fc1efLktjqFkOCPHltXV6cRI0aotrZWmzdv1muvvabFixdr9uzZwTiloDj33HP1xBNPqLS0VNu3b9e1116rm266SXv27JFEDVvFgk8GDhxoTZkyxX27rq7OSklJsQoKCoK4qvahoqLCkmRt2rTJsizLqqystKKjo62VK1e6x+zbt8+SZBUXFwdrmSHn6NGj1oUXXmg5HA5r8ODB1tSpUy3Lon6nM2PGDOuaa65pcn99fb1ls9ms3/3ud+5tlZWVVmxsrPXf//3fbbFEdED0iJaRZL311lvu2778XO7du9eSZG3bts095r333rMiIiKsgwcPttnaQ01reuyaNWusyMhIy+l0uscsXLjQSkhIsGpqatr2BELIWWedZf3+97+nhq3EOxU+qK2tVWlpqbKzs93bIiMjlZ2dreLi4iCurH2oqqqSJCUlJUmSSktL5XK5POqZnp6uXr16Uc8fmDJlikaMGOFRJ4n6nc7bb7+tzMxMjR49Wj179tTll1+ul19+2b1///79cjqdHvXr2rWrsrKyqB9ahR5hzpefy+LiYiUmJiozM9M9Jjs7W5GRkdq6dWubrzlUtKbHFhcXq3///kpOTnaPycnJUXV1tfuV+nBSV1en5cuX69ixY7Lb7dSwlQgVPjh8+LDq6uo8njiSlJycLKfTGaRVtQ/19fWaNm2arr76avXr10+S5HQ6FRMTo8TERI+x1PNfli9frh07dqigoOCUfdSveZ999pkWLlyoCy+8UH/5y1909913695779Vrr70mSe4a8fMMf6FHmPPl59LpdKpnz54e+6OiopSUlBS2dW5tj3U6nV5r3bgvXOzatUtdunRRbGys7rrrLr311lvq27cvNWylqGAvAB3blClTtHv3bn3wwQfBXkq78eWXX2rq1KlyOByKi4sL9nLanfr6emVmZuq3v/2tJOnyyy/X7t27tWjRIo0fPz7IqwMA/6HHmrn44ov10UcfqaqqSm+88YbGjx+vTZs2BXtZ7RbvVPige/fu6tSp0ynf+i8vL5fNZgvSqkJfXl6eVq9erQ0bNujcc891b7fZbKqtrVVlZaXHeOrZoLS0VBUVFbriiisUFRWlqKgobdq0SQsWLFBUVJSSk5OpXzPOPvts9e3b12Nbnz59dODAAUly14ifZ/gLPcKcLz+XNpvtlC++nzx5UkeOHAnLOpv0WJvN5rXWjfvCRUxMjP7t3/5NGRkZKigo0GWXXab58+dTw1YiVPggJiZGGRkZKioqcm+rr69XUVGR7HZ7EFcWmizLUl5ent566y2tX79evXv39tifkZGh6Ohoj3qWlZXpwIED1FPSkCFDtGvXLn300Ufuf5mZmRo7dqz7/6lf066++upTfr3i3//+d5133nmSpN69e8tms3nUr7q6Wlu3bqV+aBV6hDlffi7tdrsqKytVWlrqHrN+/XrV19crKyurzdccLP7osXa7Xbt27fIIaQ6HQwkJCae8KBNO6uvrVVNTQw1bK9jfFG8vli9fbsXGxlqLFy+29u7da02ePNlKTEz0+NY/Gtx9991W165drY0bN1pfffWV+9/x48fdY+666y6rV69e1vr1663t27dbdrvdstvtQVx1aPvhb3+yLOrXnJKSEisqKsp6/PHHrU8//dRaunSpFR8fby1ZssQ95oknnrASExOtP//5z9bf/vY366abbrJ69+5tff/990FcOdozesTpHT161Nq5c6e1c+dOS5L17LPPWjt37rS++OILy7J8+7kcPny4dfnll1tbt261PvjgA+vCCy+0cnNzg3VKQeGPHnvy5EmrX79+1rBhw6yPPvrIWrt2rdWjRw9r1qxZwTiloJg5c6a1adMma//+/dbf/vY3a+bMmVZERIS1bt06y7KoYWsQKlrg+eeft3r16mXFxMRYAwcOtLZs2RLsJYUkSV7/vfrqq+4x33//vfWrX/3KOuuss6z4+Hjr5ptvtr766qvgLTrE/ThUUL/mvfPOO1a/fv2s2NhYKz093XrppZc89tfX11sPP/ywlZycbMXGxlpDhgyxysrKgrRadBT0iOZt2LDBa28YP368ZVm+/Vx+8803Vm5urtWlSxcrISHBmjBhgnX06NEgnE3w+KvHfv7559Z1111nde7c2erevbt1//33Wy6Xq43PJnjuvPNO67zzzrNiYmKsHj16WEOGDHEHCsuihq0RYVmW1dbvjgAAAADoOPhOBQAAAAAjhAoAAAAARggVAAAAAIwQKgAAAAAYIVQAAAAAMEKoAAAAAGCEUAEAAADACKECAAAAgBFCBQAAAAAjhAoAAAAARggVAAAAAIwQKgAAAAAY+f8BPRU9jXrhFMwAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import random\n", "\n", "sonify_idxs = random.sample(range(len(datasets)), 4) \n", "\n", "correct_one = sonify_idxs[random.randint(0, len(sonify_idxs) - 1)]\n", "x_mode = \"spatial\" # gaps , spatial\n", "y_mode = \"static\" # static , pitch\n", "\n", "sonify(datasets[correct_one][\"x\"],\n", " datasets[correct_one][\"y\"],\n", " x_mode=x_mode,\n", " y_mode=y_mode,\n", " save=\"test_audio.wav\"\n", " )\n", "\n", "plot_four(datasets, sonify_idxs, y_mode)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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hFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAmhFGzduVEhIiDZu3OjtqQAAfAj9AYGOUAF44JVXXlFISIjrT2RkpC655BJlZ2ervLy8Ve5jzZo1mjNnjsfjX3zxRQ0ZMkTx8fGKiIhQ7969lZWVpS+++KJV5gMAODdf7A+nczqd6tu3r0JCQvT73/++VeYDNCTM2xMA/Mmjjz6q3r17q7q6Wu+9954WLVqkNWvWaPfu3YqKijI69po1a5SXl+dx49i5c6d69+6t66+/Xj/60Y+0b98+vfjii1q9erU++OADJSYmGs0HAOA5X+oPp3vuuee0f/9+o/sHPEGoAJrhuuuuU2pqqiTpl7/8pTp27Kh58+bpL3/5i8aOHdumc3n++efP2jZ69Gilpqbqtdde04wZM9p0PgAQzHypP5xUUVGhRx99VNOnT9cjjzzilTkgePDyJ8DAtddeK0nat29fk+NWrlyplJQUtW/fXp06ddJtt92mAwcOuG6/4447lJeXJ0luT6M3V69evSRJlZWVzd4XANB6fKE/zJgxQ3369NFtt93WwioAz/FMBWDgs88+kyR17Nix0TGvvPKKsrKydNVVVyk3N1fl5eVasGCB3n//fe3cuVOxsbH6r//6L5WWlio/P19/+tOfmjWHb7/9VrW1tdq/f78effRRSdLQoUNbXhQAwJi3+0NRUZFeffVVvffeey16kApoLkIF0AxHjhzRoUOHVF1drffff1+PPvqo2rdvr5/97GcNjnc6nZo+fbr69eund999V5GRkZKka665Rj/72c/0zDPPaO7cuUpPT9cll1yi/Pz8Zj+i1K1bN9XU1Eiqb17PPvushg0bZlYoAKBZfKk/WJale++9V7fccovS09P5AA+0CUIF0AwZGRluX/fs2VNLly5Vt27dGhy/fft2VVRUaM6cOa6GIUmjRo1SUlKS3nnnHc2dO9doTn/9619VXV2tvXv3asmSJfr++++NjgcAaD5f6g+vvPKKPvzwQ73++ust2h9oCUIF0Ax5eXm65JJLFBYWpvj4ePXp00ehoY2/NenLL7+UJPXp0+es25KSkvTee+8Zz+mnP/2ppPo3Cd5www3q16+fOnTooOzsbONjAwA84yv9oaqqSjNnztS0adPUvXv3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EKx9IFiv+1znDXj7neL+Yvny5VZERIT1yiuvWHv27LHuuusuKzY21iorK/P21Gxzzz33WDExMdbGjRutgwcPuv4cO3bMNebuu++2evToYa1fv97avn27lZ6ebqWnp3tx1vY7/VM/LCs41qCoqMgKCwuzHn/8cevTTz+1li5dakVFRVlLlixxjXniiSes2NhY6y9/+Yv1j3/8w7rhhhsC7iP2JkyYYHXr1s31UYNvvPGG1alTJ+vXv/61a0wwrAPOFgw9gp5wSjD0gWC97nOdbzlCRTM899xzVo8ePazw8HBr4MCB1pYtW7w9JVtJavDPyy+/7Brzww8/WL/61a+sH/3oR1ZUVJR14403WgcPHvTepNvAmc0kWNbg7bfftvr162dFRERYSUlJ1gsvvOB2e11dnTVr1iwrPj7eioiIsIYOHWqVlJR4abb2qKqqsqZMmWL16NHDioyMtC688ELroYcesmpqalxjgmEd0LBA7xH0hFOCpQ8E43Wf63zLhVjWab8iEAAAAACaifdUAAAAADBCqAAAAABghFABAAAAwAihAgAAAIARQgUAAAAAI4QKAAAAAEYIFQAAAACMECoAAAAAGCFUAAAAADBCqAAAAABghFABAAAAwAihAgAAAICR/x8JJkVB13bDQQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_four(datasets , sonify_idxs, y_mode, correct_one)" ] } ], "metadata": { "kernelspec": { "display_name": "tenv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.12" } }, "nbformat": 4, "nbformat_minor": 2 }