Téléverser les fichiers vers "/"
This commit is contained in:
1 parent
ce3b7cf527
commit
a8323a2633
1 file changed
+75
-119
+75
-119
@@ -20,7 +20,7 @@
|
||||
"id": "ea73e020",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"## 1. Imports and plot function"
|
||||
"## 1. Imports"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -39,45 +39,6 @@
|
||||
"import pandas as pd"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"id": "54c5e14f",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import matplotlib.pyplot as plt\n",
|
||||
"from mpl_toolkits.mplot3d import Axes3D # Nécessaire pour la 3D\n",
|
||||
"\n",
|
||||
"def plot_pareto_3d(archive, model_type:str):\n",
|
||||
" fig = plt.figure(figsize=(12, 8))\n",
|
||||
" ax = fig.add_subplot(111, projection='3d')\n",
|
||||
"\n",
|
||||
" # Extraction des scores depuis l'archive\n",
|
||||
" # f_best[0] = Coût, f_best[1] = Insatisfaction, f_best[2] = Stress Réseau\n",
|
||||
" f1 = [p.f_best[0] for p in archive] \n",
|
||||
" f2 = [p.f_best[1] for p in archive] \n",
|
||||
" f3 = [p.f_best[2] for p in archive] \n",
|
||||
"\n",
|
||||
" # Création du nuage de points\n",
|
||||
" img = ax.scatter(f1, f2, f3, c=f3, cmap='viridis', s=60, edgecolors='black')\n",
|
||||
" \n",
|
||||
" ax.set_xlabel('Coût (€)')\n",
|
||||
" ax.set_ylabel('Insatisfaction (SoC manquant)')\n",
|
||||
" ax.set_zlabel('Pic Réseau (kW)')\n",
|
||||
" ax.set_title(f'Front de Pareto des Solutions Non-Dominées ({model_type})')\n",
|
||||
" \n",
|
||||
" # Barre de couleur\n",
|
||||
" cbar = fig.colorbar(img, ax=ax, pad=0.1)\n",
|
||||
" cbar.set_label('Intensité du Pic Réseau (kW)')\n",
|
||||
" \n",
|
||||
" # Sauvegarde et affichage\n",
|
||||
" filename = f\"{model_type}_pareto_3d.png\"\n",
|
||||
" plt.savefig(filename)\n",
|
||||
" print(f\"Graphique sauvegardé sous : {filename}\")\n",
|
||||
" plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "ee8b04e4",
|
||||
@@ -91,7 +52,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 3,
|
||||
"execution_count": 2,
|
||||
"id": "f783ba32",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
@@ -109,18 +70,7 @@
|
||||
" for p in self.particles:\n",
|
||||
" self.surrogate_handler.add_data(p.x, p.f_current[1])\n",
|
||||
"\n",
|
||||
" def iterate(self):\n",
|
||||
" train_freq = 10 # Retrain every 10 iterations\n",
|
||||
" \n",
|
||||
" # Check if retraining is needed\n",
|
||||
" if self.use_surrogate and (self.t % train_freq == 0):\n",
|
||||
" self.surrogate_handler.train()\n",
|
||||
"\n",
|
||||
" # Determine if AI prediction should be used\n",
|
||||
" use_ai = (self.use_surrogate and \n",
|
||||
" self.surrogate_handler.is_trained and \n",
|
||||
" self.t % train_freq != 0)\n",
|
||||
"\n",
|
||||
" def iterate(self, prediction_freq:int=10):\n",
|
||||
" # Main loop (overriding original logic to manage control flow)\n",
|
||||
" for t in range(self.t): \n",
|
||||
" self.select_leader()\n",
|
||||
@@ -131,7 +81,7 @@
|
||||
" self.particles[i].update_position()\n",
|
||||
" self.particles[i].keep_boudaries(self.A_max)\n",
|
||||
"\n",
|
||||
" if use_ai:\n",
|
||||
" if (t % (prediction_freq) != 0) and self.use_surrogate:\n",
|
||||
" # Fast exact calculation (f1, f3)\n",
|
||||
" f1 = self.particles[i].f1(self.prices)\n",
|
||||
" f3 = self.particles[i].f3()\n",
|
||||
@@ -147,13 +97,31 @@
|
||||
" self.particles[i].updating_socs(self.socs, self.capacities)\n",
|
||||
" self.particles[i].evaluate(self.prices, self.socs, self.socs_req, self.times)\n",
|
||||
"\n",
|
||||
" # Capture data for AI training\n",
|
||||
" if self.use_surrogate:\n",
|
||||
" self.surrogate_handler.add_data(self.particles[i].x, self.particles[i].f_current[1])\n",
|
||||
"\n",
|
||||
" self.particles[i].update_best()\n",
|
||||
" \n",
|
||||
" self.update_archive()"
|
||||
" self.update_archive()\n",
|
||||
"\n",
|
||||
"\n",
|
||||
" # Run Classic MOPSO, collect data and run training for the model\n",
|
||||
" def train_surrogate_model(self):\n",
|
||||
" # Generation of data\n",
|
||||
" for t in range(self.t): \n",
|
||||
" self.select_leader()\n",
|
||||
" \n",
|
||||
" for i in range(self.n):\n",
|
||||
" # Movement \n",
|
||||
" self.particles[i].update_velocity(self.leader.x, self.c1, self.c2, self.w)\n",
|
||||
" self.particles[i].update_position()\n",
|
||||
" self.particles[i].keep_boudaries(self.A_max)\n",
|
||||
" # Standard Calculation (Slow and Exact)\n",
|
||||
" self.particles[i].updating_socs(self.socs, self.capacities)\n",
|
||||
" self.particles[i].evaluate(self.prices, self.socs, self.socs_req, self.times)\n",
|
||||
" \n",
|
||||
" # Capture data for AI training\n",
|
||||
" self.surrogate_handler.add_data(self.particles[i].x, self.particles[i].f_current[1])\n",
|
||||
" \n",
|
||||
" # End of dataset generation (based on classic MOPSO)\n",
|
||||
" self.surrogate_handler.train()"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -167,7 +135,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 4,
|
||||
"execution_count": 3,
|
||||
"id": "a7789c8c",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
@@ -221,7 +189,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 5,
|
||||
"execution_count": 4,
|
||||
"id": "a8797755",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
@@ -243,6 +211,9 @@
|
||||
"# Instantiate extended class\n",
|
||||
" optimizer = SmartMOPSO(model_type=model_type, **params)\n",
|
||||
"\n",
|
||||
" if(model_type is not None):\n",
|
||||
" optimizer.train_surrogate_model()\n",
|
||||
" \n",
|
||||
" start_time = time.time()\n",
|
||||
" \n",
|
||||
" # Run simulation\n",
|
||||
@@ -277,7 +248,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 11,
|
||||
"execution_count": 10,
|
||||
"id": "6cdd4953",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
@@ -311,64 +282,52 @@
|
||||
"dtype: float64\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: Only MOPSO ---\n",
|
||||
"Finished in 0.40 seconds.\n",
|
||||
"Best f2 found: 5.3493\n",
|
||||
"Finished in 0.39 seconds.\n",
|
||||
"Best f2 found: 5.6198\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With MLP ---\n",
|
||||
"Finished in 0.68 seconds.\n",
|
||||
"Best f2 found: 6.3994\n",
|
||||
"Finished in 0.32 seconds.\n",
|
||||
"Best f2 found: 6.7202\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With Random Forest ---\n",
|
||||
"Finished in 0.52 seconds.\n",
|
||||
"Best f2 found: 5.2397\n",
|
||||
"Finished in 2.77 seconds.\n",
|
||||
"Best f2 found: 5.7399\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: Only MOPSO ---\n",
|
||||
"Finished in 0.96 seconds.\n",
|
||||
"Best f2 found: 4.5495\n",
|
||||
"Finished in 0.92 seconds.\n",
|
||||
"Best f2 found: 4.0497\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With MLP ---\n",
|
||||
"Finished in 1.30 seconds.\n",
|
||||
"Best f2 found: 5.3998\n",
|
||||
"Finished in 0.78 seconds.\n",
|
||||
"Best f2 found: 4.2297\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With Random Forest ---\n",
|
||||
"Finished in 1.12 seconds.\n",
|
||||
"Best f2 found: 4.4896\n",
|
||||
"Finished in 6.91 seconds.\n",
|
||||
"Best f2 found: 5.2098\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: Only MOPSO ---\n",
|
||||
"Finished in 9.63 seconds.\n",
|
||||
"Best f2 found: 5.4597\n",
|
||||
"Finished in 1.90 seconds.\n",
|
||||
"Best f2 found: 6.0193\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With MLP ---\n",
|
||||
"Finished in 10.31 seconds.\n",
|
||||
"Best f2 found: 6.9999\n",
|
||||
"Finished in 1.80 seconds.\n",
|
||||
"Best f2 found: 3.2313\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With Random Forest ---\n",
|
||||
"Finished in 9.77 seconds.\n",
|
||||
"Best f2 found: 5.7496\n",
|
||||
"Finished in 13.86 seconds.\n",
|
||||
"Best f2 found: 5.1697\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: Only MOPSO ---\n",
|
||||
"Finished in 18.79 seconds.\n",
|
||||
"Best f2 found: 6.6090\n",
|
||||
"Finished in 9.62 seconds.\n",
|
||||
"Best f2 found: 5.3396\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With MLP ---\n",
|
||||
"Finished in 20.60 seconds.\n",
|
||||
"Best f2 found: 5.8495\n",
|
||||
"Finished in 8.16 seconds.\n",
|
||||
"Best f2 found: 6.0898\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With Random Forest ---\n",
|
||||
"Finished in 22.21 seconds.\n",
|
||||
"Best f2 found: 3.4493\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: Only MOPSO ---\n",
|
||||
"Finished in 196.01 seconds.\n",
|
||||
"Best f2 found: 5.0795\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With MLP ---\n",
|
||||
"Finished in 206.84 seconds.\n",
|
||||
"Best f2 found: 5.2493\n",
|
||||
"\n",
|
||||
"--- Launching Scenario: With Random Forest ---\n",
|
||||
"Finished in 202.25 seconds.\n",
|
||||
"Best f2 found: 5.4393\n"
|
||||
"Finished in 69.95 seconds.\n",
|
||||
"Best f2 found: 7.1100\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -397,7 +356,7 @@
|
||||
" 'MLP': [],\n",
|
||||
" 'RF': []\n",
|
||||
"}\n",
|
||||
"nb_particles = [20,50,500,1000,10000]\n",
|
||||
"nb_particles = [20,50,100,500]\n",
|
||||
"\n",
|
||||
"for k in range(len(nb_particles)):\n",
|
||||
" # 1. Without Surrogate (Baseline)\n",
|
||||
@@ -439,7 +398,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 16,
|
||||
"execution_count": 11,
|
||||
"id": "165b48cd",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
@@ -451,21 +410,18 @@
|
||||
"=== SUMMARY ===\n",
|
||||
"Mode | Time (s) | Best f2 \n",
|
||||
"---------------------------------------------\n",
|
||||
"MOPSO _20 | 0.40 | 5.3493 \n",
|
||||
"MOPSO _50 | 0.96 | 4.5495 \n",
|
||||
"MOPSO _500 | 9.63 | 5.4597 \n",
|
||||
"MOPSO _1000 | 18.79 | 6.6090 \n",
|
||||
"MOPSO _10000 | 196.01 | 5.0795 \n",
|
||||
"MLP _20 | 0.68 | 6.3994 \n",
|
||||
"MLP _50 | 1.30 | 5.3998 \n",
|
||||
"MLP _500 | 10.31 | 6.9999 \n",
|
||||
"MLP _1000 | 20.60 | 5.8495 \n",
|
||||
"MLP _10000 | 206.84 | 5.2493 \n",
|
||||
"RF _20 | 0.52 | 5.2397 \n",
|
||||
"RF _50 | 1.12 | 4.4896 \n",
|
||||
"RF _500 | 9.77 | 5.7496 \n",
|
||||
"RF _1000 | 22.21 | 3.4493 \n",
|
||||
"RF _10000 | 202.25 | 5.4393 \n"
|
||||
"MOPSO _20 | 0.39 | 5.6198 \n",
|
||||
"MOPSO _50 | 0.92 | 4.0497 \n",
|
||||
"MOPSO _100 | 1.90 | 6.0193 \n",
|
||||
"MOPSO _500 | 9.62 | 5.3396 \n",
|
||||
"MLP _20 | 0.32 | 6.7202 \n",
|
||||
"MLP _50 | 0.78 | 4.2297 \n",
|
||||
"MLP _100 | 1.80 | 3.2313 \n",
|
||||
"MLP _500 | 8.16 | 6.0898 \n",
|
||||
"RF _20 | 2.77 | 5.7399 \n",
|
||||
"RF _50 | 6.91 | 5.2098 \n",
|
||||
"RF _100 | 13.86 | 5.1697 \n",
|
||||
"RF _500 | 69.95 | 7.1100 \n"
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -481,13 +437,13 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 13,
|
||||
"execution_count": 12,
|
||||
"id": "314f8d5a",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 1000x600 with 1 Axes>"
|
||||
]
|
||||
@@ -529,13 +485,13 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 14,
|
||||
"execution_count": 13,
|
||||
"id": "1e3fa2ff",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA94AAAJOCAYAAABBfN/cAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4U2X7wPFvku5dugullLJKy2pZAoooQ0UEQTaIgqAiIuB63b6+jp++KqIoiPiCioCiDFFwA7JnWaVAgVJKF7R07ybn90fooekG2qbj/lwXF8lzzknuJzlJc59naRRFURBCCCGEEEIIIUSt0Jo7ACGEEEIIIYQQojGTxFsIIYQQQgghhKhFkngLIYQQQgghhBC1SBJvIYQQQgghhBCiFkniLYQQQgghhBBC1CJJvIUQQgghhBBCiFokibcQQgghhBBCCFGLJPEWQgghhBBCCCFqkSTeQgghhBBCCCFELZLEW4ga8NBDD6HRaNBoNNx+++0m24rLNRoNy5cvV8uXL19usk2I2nL58mWcnJzQaDR06tQJRVHMHZJoBHJzc/Hw8ECj0dCqVSvy8/PNHVIZlX031xetWrVSY3z99dfNHU699frrr6uvU6tWrcwdzk1pCOeluZn7c3H77berz//QQw/V+fOLxkkSb9Hgbd261SSB1Wg03HfffeXu+9tvv5XZV75Qa8aePXuYMGECrVq1wsbGBnt7e/z8/OjRowfTpk3j888/N3eIdeb8+fNlzrPy/pX8wVVUVMS6det46qmn6N27Ny1btsTGxgYHBwc6d+7M888/z6VLl24onjfffJPMzEwAnnnmmQov9OzcuZMZM2YQEhKCi4sLlpaWuLu7c+utt/Laa69x9uzZG3p+0TjZ2tryxBNPABATE8OiRYvMHJEQoiEwd1IthLlYmDsAIWrDL7/8wrlz52jdurVJ+YIFC2rl+caNG0dISAgAfn5+tfIc9dnSpUuZMWNGmZbUnJwcLl68yIEDB/jxxx959NFHzRRh/ZecnMzIkSPLlOfn53Ps2DGOHTvGsmXL2LJlC8HBwdV+3ISEBBYvXgyAu7s7EyZMKLNPamoqU6dOZf369WW2paSksGPHDnbs2MG2bdvYunVrtZ9bNH5PPPEEb731FkVFRbz99ts8/vjjWFtbmzssIUQD99JLL5Geng5Anz59zByNEDVDEm/RKBkMBhYuXMiHH36olp0+fZpff/21Vp7vrrvu4q677qqVxza3zMxMHB0dK9x+5coVZs+erSbdLVq04IEHHsDT05PMzEyOHz/OP//8U1fhXpeMjAycnJxq/XkGDRrE4MGDy5SXd5HG0tKSgQMH0qNHDwoLC1mzZg1nzpwBjF3GH330UXbs2FHt5162bBkFBQUAjBo1CktLS5Pt2dnZDB48mAMHDqhl3t7ejBgxgpYtW5KZmcmhQ4f466+/qv2cjVV2dja2trZotdJZrJiHhwd33HEHv//+O5cvX2bt2rWMHz/e3GEJUS16vZ78/Hzs7OzMHUqjd73fn9OnT6/liIQwA0WIBm7Lli0KoP7TarUKoDg7OytZWVnqfrNmzVL30el06u0pU6aUeczExETlhRdeULp06aI4ODgo1tbWSmBgoDJz5kwlJiamzP5TpkxRH69///4m20rGtmzZMrV82bJlJttKy8vLUz755BPl1ltvVVxdXRVLS0vF29tbeeCBB5Rdu3aV2f+1115TH8vf399kW3R0tMlzbdmypcLjkpOTlZkzZyrNmzdXtFqtMn/+/HJf92IbNmwweezz58+X2aewsFD57bffyj0+NjZWee6555SuXbsqjo6OirW1teLn56cMHz5c+f3338vs/8MPPyj33HOP4uXlpVhaWiouLi7KLbfcorz//vtKdnZ2mf1Lv/7r169XbrnlFsXe3l5xdnY22feff/5Rxo4dq/j5+SlWVlaKo6Oj0rt3b2XhwoVKQUFBpa9DSaVf79dee63KYy5fvqzMmTNHSUhIMCnPyclROnToYPJ46enp1Y6lTZs26nHlvZ7/+te/TB57+PDh5b6OcXFxyuLFi8uU//nnn8qoUaOU5s2bq69Zt27dlFdffVVJSUkps7+/v7/J63LgwAFl6NChirOzs2Jra6v069dP2b59u7p/VFRUhedusZ49e6rbH3nkEZNthw8fVh5++GGldevWio2NjWJvb6907dpVeeutt0y+HyqKb/v27cqdd96pODk5KYCSmpqqKIrxnH733XeVNm3aKFZWVkrr1q2Vt956SykoKKjwM1/ses+z0o/3+++/K7fffrtib2+vODg4KHfddZdy/PjxMscpyvV/vn766SflvvvuU7y9vdXP14ABA5QVK1YoBoOh3OdYsmSJGt/AgQPL3ac8hYWFyvz585XevXsrzs7Oik6nU5o1a6Z07NhRmTx5srJq1aoyx9Tkd7OiKMrFixeVZ555RgkJCVHs7e0Va2trxd/fX5k4caKyd+/eMvuX/r5MS0tTnnnmGaVly5aKpaWlEhAQoLz11lsVvlblKX3OlXa953BFyvs7sGrVKqVnz56Kra2t4uLiojzwwAPKhQsXyj3+wIEDyuTJk5VWrVop1tbWir29vRIcHKzMmzdPiY2NLbN///79Tf7O7t27V7nzzjsVe3t7xdPTU5k5c6aSmZmpKIqifPfdd0poaKhiY2Oj+Pr6KvPmzVPy8vJMHq/0a5+RkaHMmzdPadGihWJtba0EBQUpn3zySZnXvvQ5EBMTo0yaNEnx9PRUNBqNsm7dOnXf6z2/qrJt2zalf//+ip2dneLq6qo88MADypkzZ6o8L2syjtLn1549e5RBgwYpTk5OioODgzJ48GDlwIEDZY778ssvldGjRysdOnRQ3NzcFAsLC8XR0VHp0qWL8txzzymXL1+u8rlKf38OHz7c5Bws719Fj1VaZGSkMnPmTCUoKEixt7dXbG1tlYCAAGXs2LHK/v371f1Kn4clVfY7rLLjFEVRzp49qzz55JNKhw4dFDs7O8XGxkYJCgpSnn/++XJfm8uXLytPP/200rFjR8XOzk6xtLRUvLy8lB49eihPPPGEsnv37jLHiMZHEm/R4JVOvEeMGKHe/vTTTxVFUZT09HTF0dFRAZRu3bqZfKGX/kLdtWuX4u7uXuEfBWdnZ+Wff/4xOaamE+9Lly4pXbt2rTAGrVarfPTRRybH1ETi7e7uXibJqyrx/vHHH03237BhQ6X7l/TLL7+o70t5/5566il136KiImXMmDGV/sEOCgpS4uPjTZ6j5PZbb721zHtZ7MUXX6z0sW+99dZq/8i9kcS7Mk8//bTJ4yUnJ1fruHPnzpmcMxkZGSbbCwoKTF5/b2/v6/ohP2/evEpfs+bNm5dJCEt+9nr27KlYWlqWOc7a2lo5ceKEekzJ923GjBkmj3fmzBmTY0telPrss88UCwuLCuPr2LFjmQsdJeO75ZZbTC7SwbXEe9y4ceU+5rBhwyr8zCvKjZ1nJbf37dtX0Wg0ZY5zc3NTLl26ZHLc9Xy+9Hq9Mnny5EpjGz16tFJUVFTmPDh27JjJe1c6YapIye/N8v716tXLZP+a/m7etm2b4urqWuHjabVa5YMPPjA5puT3pZubmxIUFFTusa+88kq1XgNFqTzBuJFzuCKlv5f69etX7mO2bdtWyc3NNTl2/vz56kXtil770hfFSiYuwcHBirW1dZnjbr/9duX9998v9zEnT55c4Wvv5eWldO/evdzjnnzySZPjSp4Dbdu2Vby9vU32L068b+T8qszGjRvLfe+aNWum3HLLLRWelzUdR8nzq1+/fuV+59ra2ppc8FQURQkLC6v089m8eXMlLi6uwucq7/uzphLvpUuXKlZWVhU+RsnfLbWReK9fv16xs7Or9LUp+TcsNzdXad++faX1fv7556v5joqGTLqai0Zn4sSJ7Nixg+TkZBYuXMjMmTNZtmyZOrnU7NmzK5zMIyMjgxEjRpCcnAyAv78/Y8eOxdbWlh9++IGIiAjS09MZNWoUUVFRODs710odJk+ezOHDhwFwdHRkwoQJtGjRgp07d/Lrr79iMBiYO3cu3bt3p2/fvjX2vMnJySQnJzNw4ED69u3L5cuX8fLyqvSYrl27otFo1K7mw4cPp3Xr1vTu3ZvQ0FBuvfVWevToUWZCr5iYGEaPHk1OTg6AOile165duXz5Mn///bfJ/m+//Tbff/+9er93794MHjyYyMhI1qxZA0BkZCQTJ04sc2yx7du34+7uzrhx43BzcyMiIgKA1atX8/bbb6v7DRkyhL59+5KUlMRXX31FVlYW27dvZ+7cuSxZsqQ6L6WJXbt28f7775cpv/vuu6s1XvvkyZPq7datW+Pm5lat592+fbt6u127dmWGDOzfv1/9XACMHTsWe3v7aj32N998YzKUIzg4mPvvv5/4+Hi++uor9Ho9cXFxjBw5koiICCwsyv652bdvHy1atGDixInExsaycuVKwDiufcGCBerY9Icfflityw8//MDChQvVLvOrVq1SH69Dhw7ccsstgPE1nzVrFgaDATCeL3fddReZmZl89dVXJCcnc+LECR588EF+//33cuu4e/du7OzsmDRpEs2bNyc8PBydTscPP/zA6tWr1f1at27NuHHjuHDhAt9++22Fr1lNnGc7d+6kQ4cOjBw5ksOHD7Np0ybAOBb/yy+/5F//+hdw/Z+v9957j2+++Ubdd9SoUXTp0oXo6Gi++eYbddhD165defHFF02ODQoKwt7enuzsbPLz89m3bx+33nprha8DQFZWFitWrFDvjxo1itDQUNLT04mJiWHbtm0m+9f0d3NaWhojR44kNTUVME4U9/DDD+Pk5MSqVauIiYnBYDDwzDPPEBYWRv/+/cs8RkpKCqmpqTz44IP4+vqydOlSNb4FCxbw8ssvY2VlVWkclamJc7gyO3bsoEePHgwZMoQtW7awc+dOAKKioli/fj3jxo0D4J9//mHevHnqd3zLine truncated
|
||||
"text/plain": [
|
||||
"<Figure size 1000x600 with 1 Axes>"
|
||||
]
|
||||
|
||||
Reference in new issue
Block a user