https://github.com/webstorms/NeuralPred
Tip revision: 9eccfe575524736f25f4f3759fe04648f22554de authored by Luke Taylor on 09 April 2024, 14:00:54 UTC
Added brainbox version.
Added brainbox version.
Tip revision: 9eccfe5
Inspection.ipynb
{
"cells": [
{
"cell_type": "code",
"execution_count": 4,
"id": "404db67d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The autoreload extension is already loaded. To reload it, use:\n",
" %reload_ext autoreload\n"
]
}
],
"source": [
"import torch\n",
"import torch.nn as nn\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import seaborn as sns\n",
"from scipy.stats import bootstrap\n",
"\n",
"import brainbox\n",
"from brainbox.physiology import neural\n",
"import pandas as pd\n",
"\n",
"from src import analysis\n",
"\n",
"import matplotlib\n",
"matplotlib.rcParams[\"svg.fonttype\"] = \"none\"\n",
"matplotlib.rcParams[\"font.family\"] = \"Arial\"\n",
"\n",
"%load_ext autoreload\n",
"%autoreload 2"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "c1e94f37",
"metadata": {},
"outputs": [],
"source": [
"root = \"/home/luketaylor/PycharmProjects/NeuralPred\""
]
},
{
"cell_type": "code",
"execution_count": null,
"outputs": [],
"source": [
"pvc1_query = analysis.PVC1ModelQuery(root)\n",
"cadena_query = analysis.CadenaModelQuery(root)"
],
"metadata": {
"collapsed": false,
"pycharm": {
"name": "#%%\n"
}
}
},
{
"cell_type": "markdown",
"id": "fb633e53",
"metadata": {},
"source": [
"## Best model comparison"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "5a969864",
"metadata": {},
"outputs": [],
"source": [
"rename_mapping = {\"bwt\": \"BWT\", \"prednet\": \"PredNet\", \"stack_compression_4-6-8_True\": \"Autoencoder\", \"stack_prediction_4-6-2_True\": \"Prediction\", \"stack_slowness_4-6_True\": \"Slowness\", \"vgg\": \"VGG\"}\n",
"ordering = [\"vgg\", \"bwt\", \"prednet\", \"stack_compression_4-6-8_True\", \"stack_slowness_4-6_True\", \"stack_prediction_4-6-2_True\"]\n",
"rename_ordering = [rename_mapping[name] for name in ordering]\n",
"colors = sns.color_palette(\"bright\")[:7]\n",
"target_color = sns.color_palette(\"bright\")[7]"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "fe907bd1",
"metadata": {},
"outputs": [],
"source": [
"best_pvc1 = pvc1_query.get_best_df()\n",
"best_pvc1[\"model\"] = best_pvc1[\"model\"].map(rename_mapping)\n",
"\n",
"best_cadena = cadena_query.get_best_df()\n",
"best_cadena[\"model\"] = best_cadena[\"model\"].map(rename_mapping)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "3f48cbf4",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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kujo6Nz+mLJIS0tT50MDIG+++Wa+jsN5viiveOeLSI8+++wzrF+/Hk2bNoWFhQVOnTqFBw8ewM/PD6tWrcLOnTvVuVQy36kyMTHBmjVrEBwcDF9fX9y/fx/nzp1DrVq1sHHjRnVuFs08YRpWVlb49ddf8dNPP6FDhw5ITU3FiRMnkJaWhlatWmHlypX46aefssxT9t1332H58uVo1aoVMjIycOrUKdy9exdNmzbFokWL8M8//zx39KwXydzVIyAgAGZmHIiViOhlNWjQAO7u7gCeDgOfedqTF5k6dSoOHjyIvn37olSpUjh16hSSkpLg5+eHlStX4u+//4a9vX2O+2u6GZqYmGDAgAF5jn3GjBk4cOAA+vXrp75+bGws6tatizlz5uDo0aNwdHTM83E1TE1Nte50sccF6Yoi8sykQ0Rk9BYvXoxRo0ahbdu2+Ouvv/QdDhERERGBz3wRGZ3Hjx/D2dkZzZo1Q0RERLbb/P777wCAevXq6TI0IiIiInoOFl9ERsbKygrly5fHP//8g/Hjx2tNMPn48WN8/PHH+P3332Ftba2OJEhERERE+sduh0RG6J9//kGHDh2QmJgIa2treHh4wMTEBNeuXcPDhw9hZWWF4OBg9OnTR9+hEhEREdH/Y/FFZKTCw8Px9ddf46+//sKtW7fw5MkTODs7o23bthg5ciS8vb31HSIRERERZcLii4iIiIiISAf4zBcREREREZEOsPgiIiIiIiLSARZfREREREREOsDii4iIiIiISAdYfBEREREREekAiy8iIiIiIiIdYPFFRERERESkAyy+iIiIiIiIdIDFFxERERERkQ6w+CIiIiIiItIBFl9EREREREQ6wOKLiIiIiIhIB1h8ERERERER6QCLLyIiIiIiIh1g8UVERERERKQDLL6IiIiIiIh0gMUXERERERGRDrD4IiIiIiIi0gEWX0RERERERDrA4ouIiIiIiEgHWHwRERERERHpAIsvIiIiIiIiHWDxRUREREREpAMsvoiIiIiIiHSAxRcREREREZEOsPgiIiIiIiLSARZfREREREREOsDii4iIiIiISAdYfBEREREREekAiy8iIiIiIiIdYPFFRERERESkAyy+iIiIiIiIdIDFFxERERERkQ6w+CIiIiIiItIBFl9EREREREQ6wOKLiIiIiIhIB1h8ERERERER6QCLLyIiIiIiIh1g8UVERERERKQDLL6IiIiIiIh0gMUXERERERGRDrD4IiIiIiIi0gEWX0RERERERDrA4ouIiIiIiEgHWHwRERERERHpAIsvIiIiIiIiHWDxRUREREREpAMsvoiIiIiIiHSAxVc+1K9fH66urqhfv76+QyEiIgLA3EREZAzM9B2AMYqKikJERIS+wyAiIlIxNxERGT7e+SIiIiIiItIBFl9EREREREQ6wOKLiIiIiIhIB1h8ERERERER6QCLLyIiIiIiIh0wuuLr7t27GD16NNzc3GBtbY3atWsjODg41/sfOXIEnTt3hp2dHUqXLo2mTZvizz//LMSIiYiIiIiIjKz4SkxMRLt27bB06VK8+eab+Oqrr+Dg4IAhQ4Zg3rx5L9x/27ZtaNq0Kc6fP48PP/wQM2fORHR0NF5//XVs3rxZB2dARERERETFlSIiou8gcuuzzz7DlClTsHbtWvTu3RsAICLo2LEj/v77b1y5cgUVKlTIdt+kpCR4eHjAwsICR44cgYODAwDg3r17ePXVV+Hg4ICwsLBcxeHq6oqIiAi4uLggPDy8YE6OiIjoJTA3EREZPqO687Vy5Uq4uLiohRcAKIqCSZMmITU1FWvWrMlx382bNyMyMhKzZ89WCy8AKFOmDL766iv0798fqamphRo/EREREREVX2b6DiC34uPjERYWhu7du2dZ17BhQwDAoUOHctz/77//BgB06tQJAJCRkYGkpCTY2trC39+/ECImIiIiIiL6j9EUXxERERARVKxYMcs6Gxsb2NnZ4fr16znuf+HCBZQsWRKPHj3CiBEj8NtvvyElJQXu7u6YOXMmAgICctx3wYIFWLBggfp9ZGTky50MEYD3338fsbGxAAAHBwd8/fXXeo6IiIiIyHgZw2croym+4uPjAQC2trbZrrexsUFiYmKO+9+/fx+KoqBJkyaoVasWli9fjuTkZHz55ZcYOHAg4uPjMWbMmGz3TUhIQERExMufBFEmsbGxiI6O1ncYREREREWCMXy2MpriSzMuSE7jg4gITE1Nc9w/JSUFCQkJaNmypdbIhr169YK3tzemTZuGgIAAlC5dOsu+pUqVgouLi/p9ZGQkMjIy8nsqRERERERUDBnNgBslS5YE8HTUwuwkJSVlWzhplChRAgAwevToLMsDAgKQmJiI/fv3Z7vvuHHjEB4erv5zcnLKzykQEREREVExZjTFl7u7OxRFyXb43MTERDx48CDHYeYBqOvKly+fZZ1mmaZrIxERERERUUEzmm6Htra2qFatGg4fPpxlnWaUw8aNG+e4f6NGjbB161acPn0aNWrU0Fp35coVAE8LPENkDA8PEhERERHR8xnNnS8A6N+/P27evIl169apy0QEgYGBsLS01Jr/61n9+vWDhYUFPv30U62BOaKiorBixQpUrlwZDRo0KNT480vz8GB0dLRahBERERERkXExmjtfADB27FisWrUKAQEBOHbsGDw9PREaGoodO3YgMDBQfRbr2rVr2L9/P6pUqQJfX18AT+9qff755xgzZgwaNGiAYcOG4fHjx1i8eDESExOxfv16KIqiz9MjIiIiIqIizKiKL2tra+zevRvTpk1DSEgIHj58CC8vL4SEhGhNlLx3714MGjQIAQEBavEFPB1so3Llyvjss88wffp0mJmZoVGjRli/fj0aNWqkj1MiI1B3S/tCOW7p5DRoxue8kxxdKK9zovOfBX5MIiIiIsofoyq+gKfPPAUFBSEoKCjHbQYOHIiBAwdmu65Tp07o1KlTIUVHRERERESUPaN65ouIiIiIiMhYsfgiIiIiIiLSARZfREREREREOmB0z3wZuirdbhT4MV0fpam/qIiYtEJ5DQC4+kulQjkuERERERGx+CLSmwzb7L8m48UJ0YmIiOh5WHwR6cnDXvzzK2o0E6ITERERZYfPfBEREREREekAiy8iIiIiIiIdYL8nIiLKMz7fRkRElHcsvoiIKM/4fBsREVHesfgyAmkmdkBGpq+JiIiIiMjosPgyAlE2U/UdAhERERERvSQWX0RULAX6HS3wY8Yj9b+vo1ML5TUAYOLO+oVyXCIiIipcHO2QiIiIiIhIB3jni4iIiPKMI14SEeUd73wRERG9pLt372L06NFwc3ODtbU1ateujeDg4Fztm5qaisDAQFSvXh02NjaoVKkSJk+ejEePHhVy1C9HM+JldHS0WoQREdHz8c4XEVER93knhwI/ZsLjqgAsnn4dfbtQXmPCVuP4QJ+YmIh27drhzJkzGDlyJKpWrYr169djyJAhiIqKwrRp0567f0BAANatW4devXphzJgxOHv2LBYsWIAdO3bg33//hZWVlY7OhIiIChuLLyIiopewaNEiHD9+HGvXrkXv3r0BAMOHD0fHjh0xe/Zs+Pv7o0KFCtnuu2vXLqxbtw4jRozAt99+qy53d3fH+PHjsWrVKgwdOlQn50FERIWPxRcREdFLWLlyJVxcXNTCCwAURcGkSZOwbds2rFmzBpMnT85236ioKNSrVw/vvvuu1vJ27doBAI4fP154gRMR6Ulh9JYAjKNXBp/5IiIqIFYoDSvY/f+/0voOh3QgPj4eYWFhaNiwYZZ1mmWHDh3Kcf8+ffrg2LFjqFWrltZyTdFVqVKlgguWiIj0jne+iIgKSCOM0HcIpGMREREQEVSsWDHLOhsbG9jZ2eH69eu5OtaTJ09w69Yt/PXXX5gyZQoqV6783C6HCxYswIIFC9TvIyMj834CRESkUyy+iKjQcUhqKqri4+MBALa2ttmut7GxQWJiYq6O9ccff+CNN95Q9/v2229RpkyZHLdPSEhAREREHiMmIiJ9YrdDIip0HJKaiioR0fo/u/Wmpqa5OpaHhwd+/vlnBAUFwd3dHa+//jqWLl2a4/alSpWCi4uL+s/EhCmdiMjQ8c4XGRTeISEyDlbKE0AyfV1MlSxZEgCQlJSU7fqkpKQcRzp8lre3N7y9vQEAvXr1Qs2aNTFx4kT069cv2ztr48aNw7hx49TvXV1deSeMiMjAsfgig6K5Q0JEhq2R5VV9h2AQ3N3doSgKwsPDs6xLTEzEgwcPcl18ZVayZEl07doVCxcuxMWLF+Hj41MQ4RIRkZ6xjwIREVE+2draolq1ajh8+HCWdZpRDhs3bpzj/u+++y4cHR0RFxeXZd3Dhw8BANbW1gUULRER6RuLLyIiopfQv39/3Lx5E+vWrVOXiQgCAwNhaWmpNf/Xs6pUqYLY2FitUQsB4PLly1i/fj28vLxQrVq1QoudiIh0i90OiYiIXsLYsWOxatUqBAQE4NixY/D09ERoaCh27NiBwMBAODk5AQCuXbuG/fv3o0qVKvD19QUAjB49GqGhofj0009x8+ZNNG/eHDdu3MCSJUugKApWrFgBRVH0eXpERFSAWHwRERG9BGtra+zevRvTpk1DSEgIHj58CC8vL4SEhMDf31/dbu/evRg0aBACAgLU4svKygq7d+/GnDlz8NNPPyE0NBR2dnbo2LEjZs6cCS8vL32dFhERFQIWX0SkOlrRs1COm1rJCTB/erlJDY8olNepf+tSgR+TKLccHBwQFBSEoKCgHLcZOHAgBg4cmGV5iRIl8Omnn+LTTz8txAiJiMgQsPiifLvxkXuBHzPtQQUA5v//dXihvAYAVPr4eqEcl4iIiIgoJxxwg4iIiIiISAdYfBEREREREekAiy8iIiIiIiIdYPFFRERERESkAyy+iIiIiIiIdICjHRJRoSudlp7t10RERETFCYsvMih2FunZfk3GbUR4jL5DICIiItI7Fl9kUKbWuqPvEIiIiIiICgWf+SIiIiIiItIBFl9EREREREQ6wOKLiIiIiIhIB1h8ERERERER6QAH3CAiIiriqnS7UeDHdH2Upn6IiIhJK5TXAICrv1QqlOMSEekD73wRERERERHpAIsvIiIiIiIiHWC3QyIiIiIiMnpWyhNAMn1tgFh8ERERERGR0WtkeVXfIbwQux0SERERERHpAO98EREREREA4P3330dsbCwAwMHBAV9//bWeIyIqWlh8EREREREAIDY2FtHR0foOg6jIYvFFRERERMUK7/CRvrD4IiIiIqJihXf4SF844AYREREREZEOsPgiIiIiIiLSARZfREREREREOsBnvoiIiIieg4MzEFFBYfFFRERE9BwcnIGICgq7HRIREREREekAiy8iIiIiIiIdYPFFRERERESkAyy+iIiIiIiIdIDFFxERERERkQ6w+CIiIiIiItIBFl9EREREREQ6wOKLiIiIiIhIB1h8ERERERER6QCLLyIiIiIiIh1g8UVERERERKQDLL6IiIiIiIh0wOiKr7t372L06NFwc3ODtbU1ateujeDg4Hwda+nSpVAUBStWrCjYIImIiIiIiJ5hpu8A8iIxMRHt2rXDmTNnMHLkSFStWhXr16/HkCFDEBUVhWnTpuX6WBcvXsS4ceMKMVoiIqKiK83EDsjI9DUREb2QURVfixYtwvHjx7F27Vr07t0bADB8+HB07NgRs2fPhr+/PypUqPDC4zx58gT9+vVDenp6YYdMRERUJEXZTNV3CERERseouh2uXLkSLi4uauEFAIqiYNKkSUhNTcWaNWtydZwZM2bg0qVLmDx5cmGFSkREREREpMVo7nzFx8cjLCwM3bt3z7KuYcOGAIBDhw698Dh79uxBYGAgvv/+eyiKUuBxEhERERERZcdo7nxFRERARFCxYsUs62xsbGBnZ4fr168/9xgPHjyAv78/3njjDQwaNKiwQiUiIiIiIsrCaIqv+Ph4AICtrW22621sbJCYmPjcY7z77rtITU3FsmXL8vTaCxYsgKurq/ovMjIyT/sTERERERG9dLfDw4cP48qVK3j8+PFztxs8ePBLvY6IaP2f3XpTU9Mc9w8JCcFPP/2ErVu3omzZsnl67YSEBERERORpHyIiIiIioszyXXzFxsaiffv2OHXqVK62f9niq2TJkgCApKSkbNcnJSXlONLhjRs3MHr0aPTt2xcNGjRAXFwcAODRo0fq/3FxcShdujTMzc2z7F+qVCm4uLio30dGRiIjI+OlzoeIiIiIiIqXfBdfEydOxMmTJ2FnZ4dmzZrhlVdeKdQBLNzd3aEoCsLDw7OsS0xMxIMHD3Isvnbv3o2EhASsWbMm2xERR48ejdGjR2PXrl1o2bJllvXjxo3TmhPM1dWVd8KIiIiIiChP8l187dixA2XLlsW5c+fg4OBQkDFly9bWFtWqVcPhw4ezrNOMcti4ceNs923fvj22b9+eZflff/2FwMBATJw4Ee3atUPt2rULNmgiIiIieilHK3oW+DFTKzkB5k8/BqeGRxTKawBA/VuXCuW4ZLzyXXzFx8ejffv2Oim8NPr3749p06Zh3bp16lxfIoLAwEBYWlpqzf+VmZOTE5ycnLIs19xF8/b2Rps2bQovcCIiIiIiKvbyXXy99tpruHjxYkHG8kJjx47FqlWrEBAQgGPHjsHT0xOhoaHYsWMHAgMD1QLr2rVr2L9/P6pUqQJfX1+dxkhERERERJSdfA81//HHHyMsLAyzZ8/W2eAT1tbW2L17NwYMGICQkBC8//77iIuLQ0hICCZMmKBut3fvXvj7+2Pp0qU6iYuIiIiIiOhF8n3nq2nTpliyZAmGDx+OH374ATVq1MhxCHdFUbBy5cp8B5mZg4MDgoKCEBQUlOM2AwcOxMCBA194rNxuR0RERGRI6m5pXyjHLZ2cBs3EPXeSowvldU50/rPAj0lkLPJdfB05ckQdATA8PDzbUQg1CrL4IiIiIiIiMkb5Lr4mT56MR48eoX79+ujZsyccHBwKdah5IiIiIiIiY5bv4uvo0aPw9PTE/v37YWaW78MQERERFYgbH7kXynHTHlQAYP7/X4cXyutU+vh6gR+TiAxPvgfcMDMzQ40aNVh4ERERERER5UK+i69mzZrh6NGjSE9PL8h4iIiIiIiIiqR8F1/z5s1DXFwcAgICcPfu3YKMiYiIyKjcvXsXo0ePhpubG6ytrVG7dm0EBwfnat+kpCRMnz4dnp6esLCwgJ2dHTp16oRDhw4VctRERKRr+e4zuHLlSjRs2BBr167FunXrUKVKFZQpUwbm5uZZtlUUBXv27HmpQImIiAxRYmIi2rVrhzNnzmDkyJGoWrUq1q9fjyFDhiAqKgrTpk3LcV8RQbdu3bB9+3b07NkTH3zwAWJiYrBkyRI0a9YMf/zxB/z8/HR4NkREVJjyXXx9/vnn6tcigsuXL+e4LUdBJCKiomrRokU4fvw41q5di969ewMAhg8fjo4dO2L27Nnw9/dHhQoVst133bp12L59O6ZOnYp58+apywcPHoyaNWtizJgxOHfunE7Og4iICl++i69du3YVZBxERERGaeXKlXBxcVELL+Bpo+OkSZOwbds2rFmzBpMnT8523+3btwMARowYobW8QoUKaNmyJTZv3oy4uDiULVu28E6AiIh0Jt/F17179+Dj44OKFSsWZDxERERGIz4+HmFhYejevXuWdQ0bNgSA5z67FRgYiJEjR8LV1TXLuujoaACAqalpAUVLRET6lu/ia9SoUbCwsMD165yXgoiIiqeIiAiISLYNkTY2NrCzs3tunrS3t4e9vX2W5f/++y8OHjyI2rVrw87OrkBjJiIi/cn3aIeaO19ERETFVXx8PADA1tY22/U2NjZITEzM0zEjIiLQr18/AMDs2bNz3G7BggVwdXVV/0VGRubpdYiISPfyfefL19cX+/fvx4MHD/DKK68UYEhERETGQUS0/s9ufV66Dd64cQNt27bFzZs3MXHiRLzxxhs5bpuQkICIiIi8BUxERHqV7+Jr4cKF6NGjB+rUqYMBAwagZs2asLOzg4lJ9jfTWrdune8giYiIDFHJkiUBPJ2rKztJSUk5jnT4rCNHjqBr166IiorC+PHjMX/+/OduX6pUKbi4uKjfR0ZGIiMjI5eRExGRPuS7+KpZsyYURYGIYO7cuc/dVlEUpKWl5feliIiIDJK7uzsURUF4eHiWdYmJiXjw4EGuiq/Nmzejb9++SE5ORmBgICZMmPDCfcaNG4dx48ap37u6uvJOGBGRgct38dW8eXPO30VERMWara0tqlWrhsOHD2dZpxnlsHHjxs89xsaNG9GrVy+YmZkhNDQUb731VqHESkRE+pfv4mv37t0FGAYREZFx6t+/P6ZNm4Z169apc32JCAIDA2Fpaak1/9ezTp8+jf79+8Pc3Bx//PEHWrZsqaOoiYhIH/JdfBEREREwduxYrFq1CgEBATh27Bg8PT0RGhqKHTt2IDAwEE5OTgCAa9euYf/+/ahSpQp8fX0BABMnTsTjx4/RqVMnhIeHY9WqVVmO3717d5QoUUKn50RERIXjpYuvqKgoLFmyBLt370ZkZCQsLS1Rrlw5tGrVCgMGDMj1g8ZERETGyNraGrt378a0adMQEhKChw8fwsvLCyEhIfD391e327t3LwYNGoSAgAD4+voiLS1N7UWydetWbN26NdvjX79+ncUXEVER8VLF1++//46+ffvi4cOHWsPsnjt3Drt27cL8+fOxatUqdOnS5aUDJSIiMlQODg4ICgpCUFBQjtsMHDgQAwcOVL83MzNDSkqKDqIjIiJDke9Jli9cuICePXvi4cOHGDBgAP744w+EhYXhwoUL2Lp1K/r3749Hjx6hb9++uHTpUkHGTEREREREZHTyfefrk08+wePHj/HDDz9oteQBgJeXF15//XW0bNkSQ4YMwRdffIGlS5e+bKxERERERERGK993vnbu3IlatWplKbwyGzRoEGrXro2//vorvy9DRERERERUJOS7+IqLi4OXl9cLt/Py8kJUVFR+X4aIiIiIqECVTkuH3ZM02D1JQ+m0dH2HQ8VIvrsdli1bFhcvXnzhdhcvXkSZMmXy+zJERERERAVqRHiMvkOgYirfd75at26N06dPIyQkJMdtfvzxR5w6dQqtWrXK78sQEREREREVCfm+8zV16lRs2LABgwcPxu7du9GzZ09UqlQJiqLg+vXr2LBhA1auXAlLS0tMmTKlIGMmIiIiIiIyOvkuvry9vbF27Vr069cPK1aswMqVK7XWiwhKlCiBkJAQ1KhR46UDJSIiIiIiMmYvNclyt27dcO3aNSxduhR79+7FnTt3ICJwdnZG8+bNMWzYMDg7OxdUrERERERElAfvv/8+YmNjATydEP7rr7/Wc0TF20sVXwBQrlw5fPTRRwURCxERERERFaDY2FhER0frOwz6f/kecIOIiIiIiIhy76XufB0+fBiff/45zp49i6SkJGRkZGS7naIouHnz5su8FBERERERkVHLd/G1f/9+tG7dGk+ePIGIPHdbRVHy+zJEREREemVnkZ7t10VRhm32XxNRwch38fXxxx8j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8UVERERERKQDLL6IiIiIiIh0gMUXERERERGRDrD4IiIiIiIi0gEWX0RERERERDrA4ouIiIiIiEgHWHwRERERERHpAIsvIiIiIiIiHWDxRUREREREpAMsvoiIiIiIiHSAxRcREREREZEOsPgiIiIiIiLSARZfREREREREOsDii4iIiIiISAdYfBEREREREekAiy8iIiIiIiIdYPFFRERERESkAyy+iIiIiIiIdIDFFxERERERkQ6w+CIiIiIiItIBFl9EREREREQ6wOKLiIiIiIhIB1h8ERERERER6QCLLyIiIiIiIh1g8UVERERERKQDLL6IiIiIiIh0wOiKr7t372L06NFwc3ODtbU1ateujeDg4Fzvv3LlStStWxclSpSAk5MTRo4cifv37xdixEREVNQxNxERUW4YVfGVmJiIdu3aYenSpXjzzTfx1VdfwcHBAUOGDMG8efNeuP8nn3yCgQMHwt7eHvPnz0e/fv3w/fffo1WrVkhOTtbBGRARUVHD3ERERLllpu8A8mLRokU4fvw41q5di969ewMAhg8fjo4dO2L27Nnw9/dHhQoVst03PDwcs2bNwuuvv44tW7bAxORp3enj44O+ffti4cKFmDRpks7OhYiIigbmJiIiyi2juvO1cuVKuLi4qMkNABRFwaRJk5Camoo1a9bkuO+aNWuQmpqKDz74QE1uANCnTx+4ublh+fLlhRo7EREVTcxNRESUW0ZTfMXHxyMsLAwNGzbMsk6z7NChQznuf/DgQQBAo0aNsqxr0KABwsLCEB8fX0DREhFRccDcREREeWE03Q4jIiIgIqhYsWKWdTY2NrCzs8P169dz3D88PByvvPIKSpYsmWWdq6srAODGjRuoXbt2lvULFizAggULtGIBgMjISHVfjai76bk7IQPk6mqap+3TE6IKKZLCZxrs+uKN/l/M47hCjKRwuVrl/jwB4ElUdCFFUvjMXfN2ro/inhRSJIXva1fzPG3/6O69QoqkcH31nN9p+fLlcfToUR1Gkz3mpsKXl9xUXPISwNxkLIpLbioueQl4+dxkNMWXpuXP1tY22/U2NjZITEx87v7P2xdAjvsnJCSoSS2zjIyMbJcbqyJ0Ki/2sHicbASKx3kCKFZv4PhicqrxRvA7ZW4qfEXoVJ6vmOQlgLmpKCoueQl4+dxkNMWXiGj9n916U9OcW8dE5Ln7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",
"text/plain": [
"<Figure size 1000x350 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"def plot_best_model_comparison(data, ax):\n",
" sns.barplot(data=data, x=\"model\", y=\"cc_norm\", estimator='mean', order=rename_ordering, errorbar=(\"se\"), palette=colors, ax=ax)\n",
" ax.set_xticklabels(ax.get_xticklabels(), rotation=45, ha=\"right\")\n",
" ax.set_xlabel(\"\", fontsize=16, labelpad=8)\n",
" ax.spines[\"top\"].set_visible(False)\n",
" ax.spines[\"right\"].set_visible(False)\n",
" ax.spines[\"bottom\"].set_linewidth(2)\n",
" ax.xaxis.set_tick_params(width=2, labelsize=14)\n",
" ax.spines[\"left\"].set_linewidth(2)\n",
" ax.yaxis.set_tick_params(width=2, labelsize=14)\n",
" \n",
"fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(10, 3.5))\n",
"plot_best_model_comparison(best_cadena, ax[0])\n",
"plot_best_model_comparison(best_pvc1, ax[1])\n",
"\n",
"ax[0].set_title(\"Images V1\", fontsize=18, pad=40)\n",
"ax[1].set_title(\"Movie V1\", fontsize=18, pad=40)\n",
"ax[0].set_ylabel(\"CCnorm\", fontsize=16, labelpad=8)\n",
"ax[1].set_ylabel(\"\", fontsize=16, labelpad=8)\n",
"plt.savefig(\"/home/luketaylor/PycharmProjects/image.svg\", format=\"svg\", transparent=False, bbox_inches=\"tight\")"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.8.16"
}
},
"nbformat": 4,
"nbformat_minor": 5
}