{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "753d084e",
   "metadata": {},
   "outputs": [],
   "source": [
    "import sys\n",
    "sys.path.insert(0, '../Results')\n",
    "sys.path.insert(0, '../../src')\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import pickle\n",
    "import os\n",
    "from visualization_utils import perc, SetPlotRC, ApplyFont"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "c80f8315",
   "metadata": {},
   "outputs": [],
   "source": [
    "# if not os.path.exists(\"Figures\"):\n",
    "#     os.mkdir(\"Figures\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8fe56d7a",
   "metadata": {},
   "source": [
    "# $\\mu_W$ learning rate selection NN-Antisparse"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "f40e376b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "50\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:>"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "[encoded data, 6588 characters]\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df_muW_results = pd.read_pickle(r\"../Results/simulation_results_muWSelectionV1.pkl\")\n",
    "\n",
    "print(df_muW_results.shape[0]//4)\n",
    "df_muW_results = df_muW_results.iloc[:4*(df_muW_results.shape[0]//4)]\n",
    "# df_muW_results = df_muW_results.iloc[:4*19]\n",
    "df_muW_results['SINR'].hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "af5234f3",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(0, 13)\n"
     ]
    }
   ],
   "source": [
    "print(df_muW_results.loc[df_muW_results['SINR'] == -999].shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "f4ef0f99",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>muW</th>\n",
       "      <th>count</th>\n",
       "      <th>SINR</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.005</td>\n",
       "      <td>50</td>\n",
       "      <td>23.748436</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.010</td>\n",
       "      <td>50</td>\n",
       "      <td>25.560601</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.030</td>\n",
       "      <td>50</td>\n",
       "      <td>27.297935</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.050</td>\n",
       "      <td>50</td>\n",
       "      <td>28.130805</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     muW  count       SINR\n",
       "0  0.005     50  23.748436\n",
       "1  0.010     50  25.560601\n",
       "2  0.030     50  27.297935\n",
       "3  0.050     50  28.130805"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "results = df_muW_results[['muW', 'SINR']].groupby(['muW']).agg({'muW':'size', 'SINR':'mean'}).rename(columns={'muW':'count','SINR':'SINR'}).reset_index()\n",
    "\n",
    "results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "bf465e8e",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "findfont: Font family ['Times New Roman'] not found. Falling back to DejaVu Sans.\n",
      "findfont: Font family ['Times New Roman'] not found. Falling back to DejaVu Sans.\n"
     ]
    },
    {
     "data": {
      "image/png": "[encoded data, 26016 characters]\n",
      "text/plain": [
       "<Figure size 800x480 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data= []\n",
    "muW_list = [0.005, 0.01, 0.03, 0.05]\n",
    "for muW__ in muW_list:\n",
    "    data.append(df_muW_results.loc[df_muW_results['muW'] == muW__]['SINR'].values.tolist())\n",
    "    \n",
    "data = np.stack(data, axis = 1)\n",
    "\n",
    "# compute the mean, 25/75 percentiles, and standard deviation\n",
    "mean_, perc_25, perc_75, std_data = perc(data)\n",
    "\n",
    "SINRresults = df_muW_results[['muW', 'SINR']].groupby(['muW']).agg({'muW':'size', 'SINR':'mean'}).rename(columns={'muW':'count','SINR':'SINR'}).reset_index()\n",
    "\n",
    "muW_list = np.array(SINRresults['muW'].values, dtype = np.float64)\n",
    "SINR = np.array(SINRresults['SINR'].values, dtype = np.float64)\n",
    "\n",
    "SetPlotRC()\n",
    "fh2=plt.figure(figsize=(10, 6), dpi=80)\n",
    "plt.plot(muW_list, SINR,\"-o\", linewidth=4, markersize = 13,color='#006BB2')\n",
    "plt.fill_between(muW_list,  SINR + std_data, SINR - std_data, alpha=0.25, linewidth=0, color='#006BB2')\n",
    "plt.grid()\n",
    "plt.xlabel(\"$\\mu_W$\",fontsize=25)\n",
    "plt.ylabel(\"SINR (dB)\",fontsize=25)\n",
    "\n",
    "plt.grid(linewidth=2)\n",
    "plt.xticks(muW_list, [\"5e-3\", \"1e-2\", \"3e-2\", \"5e-2\"])\n",
    "plt.xticks(fontsize=20)\n",
    "plt.yticks(fontsize=20)\n",
    "plt.axis([0.005, 0.05,21,31])\n",
    "\n",
    "ApplyFont(plt.gca())\n",
    "plt.savefig('Figures/CorInfoMax_NNAnti_muW_Ablation_uncorrelated.pdf', format='pdf')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "8babe1a4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "50\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "[encoded data, 7140 characters]\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df_muW_results = pd.read_pickle(r\"../Results/simulation_results_muWSelectionV2.pkl\")#.iloc[:12]\n",
    "\n",
    "print(df_muW_results.shape[0]//4)\n",
    "df_muW_results = df_muW_results.iloc[:4*(df_muW_results.shape[0]//4)]\n",
    "# df_muW_results = df_muW_results.iloc[:4*19]\n",
    "df_muW_results['SINR'].hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "918546ee",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>muW</th>\n",
       "      <th>count</th>\n",
       "      <th>SINR</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.005</td>\n",
       "      <td>50</td>\n",
       "      <td>23.422108</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.010</td>\n",
       "      <td>50</td>\n",
       "      <td>25.223702</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.030</td>\n",
       "      <td>50</td>\n",
       "      <td>26.481542</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.050</td>\n",
       "      <td>50</td>\n",
       "      <td>4.781704</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     muW  count       SINR\n",
       "0  0.005     50  23.422108\n",
       "1  0.010     50  25.223702\n",
       "2  0.030     50  26.481542\n",
       "3  0.050     50   4.781704"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "results = df_muW_results[['muW', 'SINR']].groupby(['muW']).agg({'muW':'size', 'SINR':'mean'}).rename(columns={'muW':'count','SINR':'SINR'}).reset_index()\n",
    "\n",
    "results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "97c8f1fc",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "[encoded data, 28024 characters]\n",
      "text/plain": [
       "<Figure size 800x480 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data= []\n",
    "muW_list = [0.005, 0.01, 0.03, 0.05]\n",
    "for muW__ in muW_list:\n",
    "    data.append(df_muW_results.loc[df_muW_results['muW'] == muW__]['SINR'].values.tolist())\n",
    "    \n",
    "data = np.stack(data, axis = 1)\n",
    "\n",
    "# compute the mean, 25/75 percentiles, and standard deviation\n",
    "mean_, perc_25, perc_75, std_data = perc(data)\n",
    "\n",
    "SINRresults = df_muW_results[['muW', 'SINR']].groupby(['muW']).agg({'muW':'size', 'SINR':'mean'}).rename(columns={'muW':'count','SINR':'SINR'}).reset_index()\n",
    "\n",
    "muW_list = np.array(SINRresults['muW'].values, dtype = np.float64)\n",
    "SINR = np.array(SINRresults['SINR'].values, dtype = np.float64)\n",
    "\n",
    "SetPlotRC()\n",
    "fh2=plt.figure(figsize=(10, 6), dpi=80)\n",
    "plt.plot(muW_list, SINR,\"-o\", linewidth=4, markersize = 13,color='#006BB2')\n",
    "plt.fill_between(muW_list,  SINR + std_data, SINR - std_data, alpha=0.25, linewidth=0, color='#006BB2')\n",
    "plt.grid()\n",
    "plt.xlabel(\"$\\mu_W$\",fontsize=25)\n",
    "plt.ylabel(\"SINR (dB)\",fontsize=25)\n",
    "\n",
    "plt.grid(linewidth=2)\n",
    "plt.xticks(muW_list, [\"5e-3\", \"1e-2\", \"3e-2\", \"5e-2\"])\n",
    "plt.xticks(fontsize=20)\n",
    "plt.yticks(fontsize=20)\n",
    "plt.axis([0.005, 0.05,21,31])\n",
    "\n",
    "ApplyFont(plt.gca())\n",
    "plt.savefig('Figures/CorInfoMax_NNAnti_muW_Ablation_correlated.pdf', format='pdf')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "138f6ac8",
   "metadata": {},
   "source": [
    "# $B_e$ Initialization NN-Antisparse"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "bc61acfe",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "50\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "[encoded data, 5748 characters]\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df_Be_results = pd.read_pickle(r\"../Results/simulation_results_Be_InitializationV1.pkl\")#.iloc[:12]\n",
    "\n",
    "print(df_Be_results.shape[0]//4)\n",
    "df_Be_results = df_Be_results.iloc[:4*(df_Be_results.shape[0]//4)]\n",
    "# df_Be_results = df_Be_results.iloc[:4*19]\n",
    "df_Be_results['SINR'].hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "cabd8bc5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Be_gain</th>\n",
       "      <th>count</th>\n",
       "      <th>SINR</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1000</td>\n",
       "      <td>50</td>\n",
       "      <td>28.105775</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2000</td>\n",
       "      <td>50</td>\n",
       "      <td>27.297935</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>5000</td>\n",
       "      <td>50</td>\n",
       "      <td>26.035285</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>10000</td>\n",
       "      <td>50</td>\n",
       "      <td>24.986244</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Be_gain  count       SINR\n",
       "0     1000     50  28.105775\n",
       "1     2000     50  27.297935\n",
       "2     5000     50  26.035285\n",
       "3    10000     50  24.986244"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "results = df_Be_results[['Be_gain', 'SINR']].groupby(['Be_gain']).agg({'Be_gain':'size', 'SINR':'mean'}).rename(columns={'Be_gain':'count','SINR':'SINR'}).reset_index()\n",
    "\n",
    "results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "c73b1fe0",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "[encoded data, 29240 characters]\n",
      "text/plain": [
       "<Figure size 800x480 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data= []\n",
    "Be_gain_list = [1000, 2000, 5000, 10000]\n",
    "for Be_gain in Be_gain_list:\n",
    "    data.append(df_Be_results.loc[df_Be_results['Be_gain'] == Be_gain]['SINR'].values.tolist())\n",
    "    \n",
    "data = np.stack(data, axis = 1)\n",
    "\n",
    "# compute the mean, 25/75 percentiles, and standard deviation\n",
    "mean_, perc_25, perc_75, std_data = perc(data)\n",
    "\n",
    "SINRresults = df_Be_results[['Be_gain', 'SINR']].groupby(['Be_gain']).agg({'Be_gain':'size', 'SINR':'mean'}).rename(columns={'Be_gain':'count','SINR':'SINR'}).reset_index()\n",
    "\n",
    "Be_gain_list = np.array(SINRresults['Be_gain'].values, dtype = np.float64)\n",
    "SINR = np.array(SINRresults['SINR'].values, dtype = np.float64)\n",
    "\n",
    "SetPlotRC()\n",
    "fh2=plt.figure(figsize=(10, 6), dpi=80)\n",
    "plt.semilogx(Be_gain_list, SINR,\"-o\", linewidth=4, markersize = 13,color='#006BB2')\n",
    "plt.fill_between(Be_gain_list,  SINR + std_data, SINR - std_data, alpha=0.25, linewidth=0, color='#006BB2')\n",
    "plt.grid()\n",
    "plt.xlabel(\"$B_e$ Gain\",fontsize=25)\n",
    "plt.ylabel(\"SINR (dB)\",fontsize=25)\n",
    "\n",
    "plt.grid(linewidth=2)\n",
    "plt.xticks(Be_gain_list, [\"1e3\", \"2e3\", \"5e3\", \"1e4\"])\n",
    "plt.xticks(fontsize=20)\n",
    "plt.yticks(fontsize=20)\n",
    "plt.axis([1000, 10000,21,31])\n",
    "\n",
    "ApplyFont(plt.gca())\n",
    "plt.savefig('Figures/CorInfoMax_NNAnti_Be_Ablation_uncorrelated.pdf', format='pdf')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "30d656d4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "50\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "[encoded data, 5388 characters]\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df_Be_results = pd.read_pickle(r\"../Results/simulation_results_Be_InitializationV2.pkl\")#.iloc[:12]\n",
    "\n",
    "print(df_Be_results.shape[0]//4)\n",
    "df_Be_results = df_Be_results.iloc[:4*(df_Be_results.shape[0]//4)]\n",
    "df_Be_results['SINR'].hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "2b69e5cc",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Be_gain</th>\n",
       "      <th>count</th>\n",
       "      <th>SINR</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1000</td>\n",
       "      <td>50</td>\n",
       "      <td>25.543416</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2000</td>\n",
       "      <td>50</td>\n",
       "      <td>26.481542</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>5000</td>\n",
       "      <td>50</td>\n",
       "      <td>27.052135</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>10000</td>\n",
       "      <td>50</td>\n",
       "      <td>25.775910</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Be_gain  count       SINR\n",
       "0     1000     50  25.543416\n",
       "1     2000     50  26.481542\n",
       "2     5000     50  27.052135\n",
       "3    10000     50  25.775910"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "results = df_Be_results[['Be_gain', 'SINR']].groupby(['Be_gain']).agg({'Be_gain':'size', 'SINR':'mean'}).rename(columns={'Be_gain':'count','SINR':'SINR'}).reset_index()\n",
    "\n",
    "results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "984142f4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "[encoded data, 28668 characters]\n",
      "text/plain": [
       "<Figure size 800x480 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data= []\n",
    "Be_gain_list = [1000, 2000, 5000, 10000]\n",
    "for Be_gain in Be_gain_list:\n",
    "    data.append(df_Be_results.loc[df_Be_results['Be_gain'] == Be_gain]['SINR'].values.tolist())\n",
    "    \n",
    "data = np.stack(data, axis = 1)\n",
    "\n",
    "# compute the mean, 25/75 percentiles, and standard deviation\n",
    "mean_, perc_25, perc_75, std_data = perc(data)\n",
    "\n",
    "SINRresults = df_Be_results[['Be_gain', 'SINR']].groupby(['Be_gain']).agg({'Be_gain':'size', 'SINR':'mean'}).rename(columns={'Be_gain':'count','SINR':'SINR'}).reset_index()\n",
    "\n",
    "Be_gain_list = np.array(SINRresults['Be_gain'].values, dtype = np.float64)\n",
    "SINR = np.array(SINRresults['SINR'].values, dtype = np.float64)\n",
    "\n",
    "SetPlotRC()\n",
    "fh2=plt.figure(figsize=(10, 6), dpi=80)\n",
    "plt.semilogx(Be_gain_list, SINR,\"-o\", linewidth=4, markersize = 13,color='#006BB2')\n",
    "plt.fill_between(Be_gain_list,  SINR + std_data, SINR - std_data, alpha=0.25, linewidth=0, color='#006BB2')\n",
    "plt.grid()\n",
    "plt.xlabel(\"$B_e$ Gain\",fontsize=25)\n",
    "plt.ylabel(\"SINR (dB)\",fontsize=25)\n",
    "\n",
    "plt.grid(linewidth=2)\n",
    "plt.xticks(Be_gain_list, [\"1e3\", \"2e3\", \"5e3\", \"1e4\"])\n",
    "plt.xticks(fontsize=20)\n",
    "plt.yticks(fontsize=20)\n",
    "plt.axis([1000, 10000,21,31])\n",
    "\n",
    "ApplyFont(plt.gca())\n",
    "plt.savefig('Figures/CorInfoMax_NNAnti_Be_Ablation_correlated.pdf', format='pdf')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "50fb2a5a",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
