Added a docstring to the board plot function
This commit is contained in:
1 file changed
+19
-16
+19
-16
@@ -80,7 +80,10 @@
|
||||
"I chose to ignore player colors as far as I could instead a player perspective was used. Which allowed to change the perspective with a flipping of the sign. (multiplying with -1).\n",
|
||||
"The array format should also allow for data multiplication or the breaking of strikt sequences by flipping the game along one the for axis, (horizontal, vertical, transpose along both diagonals).\n",
|
||||
"\n",
|
||||
"I wanted to implement different agents as classes that act on those game stacks."
|
||||
"I wanted to implement different agents as classes that act on those game stacks.\n",
|
||||
"\n",
|
||||
"Since computation time is critical all computational have results are saved.\n",
|
||||
"The analysis of those is then repeated in real time. If a recalculation of such a section is required the save file can be deleted and the code should be executed again."
|
||||
],
|
||||
"metadata": {
|
||||
"collapsed": false
|
||||
@@ -124,7 +127,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 27,
|
||||
"execution_count": 2,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
@@ -147,7 +150,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 24,
|
||||
"execution_count": 3,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
@@ -168,14 +171,14 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 26,
|
||||
"execution_count": 4,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": "array([[-1, -1],\n [-1, 0],\n [-1, 1],\n [ 0, -1],\n [ 0, 1],\n [ 1, -1],\n [ 1, 0],\n [ 1, 1]])"
|
||||
},
|
||||
"execution_count": 26,
|
||||
"execution_count": 4,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
@@ -200,13 +203,13 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 23,
|
||||
"execution_count": 5,
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": "array([[-1, 1],\n [ 1, -1]])"
|
||||
},
|
||||
"execution_count": 23,
|
||||
"execution_count": 5,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
@@ -312,13 +315,13 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 8,
|
||||
"execution_count": 24,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": "<Figure size 300x300 with 1 Axes>",
|
||||
"image/png": "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 truncated
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAASIAAAEiCAYAAABdvt+2AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAdq0lEQVR4nO3de3BU5f0G8OckG1dIsivEYFizQEIsMcHwA0RLMyhBQQKh0HFocUIBRcslAuq0lWBtaRUWx7ZDBQwUwqVDuNkR6jByEeRSUS5BodyChktZSCKMhV0S6prsnt8fx90mkE32bPacN8l5PjNndHfP2e/7kvDw7tnzvkeSZVkGEZFAUaIbQETEICIi4RhERCQcg4iIhGMQEZFwDCIiEo5BRETCMYiISDiT3gV9Ph8qKioQHx8PSZL0Lk9EOpFlGTdv3oTNZkNUVNNjHt2DqKKiAna7Xe+yRCSI0+lEcnJyk/voHkTx8fGB/+/YVd/at6oAyAAkoGOScWqLrs++i6ktuv6tSuW/9f/OB6N7EPk/jnXsCoyv0Ld2STJQcwWItQH5l41TW3R99t2YfV9rU8IolFMwPFlNRMIxiIhIOAYREQnHICIi4RhERCQcg4iIhGMQEZFwDCIiEk51EO3fvx+jRo2CzWaDJEnYsmWLBs0iIiNRHUQ1NTXo06cPlixZokV7iMiAVE/xyM3NRW5urhZtISKD0nyumcfjgcfjCTx2u91alySiNkbzk9UOhwNWqzWwcQkQIrqd5kFUWFgIl8sV2JxOp9YliaiN0fyjmdlshtls1roMEbVhvI6IiIRTPSKqrq5GeXl54PGFCxdw7NgxdO7cGd26dYto44jIGFQHUWlpKXJycgKPX3nlFQDAxIkTsXr16og1jIiMQ3UQDR48GLIsa9EWIjIoniMiIuEYREQkHIOIiIRjEBGRcAwiIhKOQUREwjGIiEg4BhERCSfJOl+d6Ha7YbVaAUm5H7eeblUCsg+QooCOXY1TW3R99t2Yfa+pACADLpcLFoulyX3FBRERGUIoQaT5MiBBcURkmPrsuzH77h8RhUJYEHVMAvIv61uzJBmouaL8QIxUW3R99t2YfV9rU4IwFDxZTUTCMYiISDgGEREJxyAiIuEYREQkHIOIiIRjEBGRcAwiIhJOVRA5HA4MGDAA8fHx6NKlC8aMGYOzZ89q1TYiMghVQbRv3z4UFBTg4MGD+Oijj1BbW4thw4ahpqZGq/YRkQGomuKxffv2Bo9Xr16NLl264OjRo3jsscci2jAiMo4WzTVzuVwAgM6dOwfdx+PxwOPxBB673e6WlCSidijsk9U+nw8vvfQSsrOz0bt376D7ORwOWK3WwGa328MtSUTtVNhBVFBQgJMnT2LDhg1N7ldYWAiXyxXYnE5nuCWJqJ0K66PZiy++iK1bt2L//v1ITk5ucl+z2Qyz2RxW44jIGFQFkSzLmDFjBjZv3oy9e/ciJSVFq3YRkYGoCqKCggKsW7cO//jHPxAfH4+qqioAgNVqRYcOHTRpIBG1f6rOERUVFcHlcmHw4MHo2rVrYNu4caNW7SMiA1D90YyIKNI414yIhGMQEZFwDCIiEo5BRETCMYiISDgGEREJxyAiIuEYREQknCTrfJWi2+2G1WoFJCDWpmdl5T7csg+QopR7gRultuj67Lsx+15TAUBW1i2zWCxN7isuiIjIEEIJohat0NgiHBEZpj77bsy++0dEoRAWRB2TgPzL+tYsSQZqrig/ECPVFl2ffTdm39falCAMBU9WE5FwDCIiEo5BRETCMYiISDgGEREJxyAiIuEYREQknOrF87OysmCxWGCxWDBw4EBs27ZNq7YRkUGoCqLk5GQsWLAAR48eRWlpKYYMGYLRo0fj1KlTWrWPiAxA1ZXVo0aNavB43rx5KCoqwsGDB5GZmRnRhhGRcYQ9xcPr9eK9995DTU0NBg4cGMk2EZHBqA6iEydOYODAgfj2228RFxeHzZs3IyMjI+j+Ho8HHo8n8NjtdofXUiJqt1R/a9arVy8cO3YMhw4dwrRp0zBx4kScPn066P4OhwNWqzWw2e32FjWYiNof1UF01113IS0tDf3794fD4UCfPn3wl7/8Jej+hYWFcLlcgc3pdLaowUTU/rR4GRCfz9fgo9ftzGYzzGZzS8sQUTumKogKCwuRm5uLbt264ebNm1i3bh327t2LHTt2aNU+IjIAVUF09epVTJgwAZWVlbBarcjKysKOHTswdOhQrdpHRAagKoiKi4u1agcRGRjnmhGRcAwiIhKOQUREwjGIiEg4BhERCccgIiLhGEREJByDiIiEk2RZDvHu1JHhdrthtVoBCYi16VmZ90Bn39l3PdVUAJABl8sFi8XS5L7igoiIDCGUIGrx7PuwcURkmPrsuzH77h8RhUJYEHVMAvIv61uzJBmouaL8QIxUW3R99t2YfV9rU4IwFOJGRNRmmBGLRKTBBDPq4ME1lMODGl1q11YDrnLA5wGizIA1DYiJ06U06YhBRI3qigfxGKaiN0YgEamQ6n3BKsOHaziPk/gQ+7EUlTgT0drXTwOnlwLODwH3eTQc3kuAJRWwjwAypgKdgi+XTm0Ig4gaSEAP5GMZMjEMXtQiGjF37CMhCl2QhscxDUMwE6ewEyWYgm9wsUW13ReAf04BrnwESCZArmtkJxlwnwNOFwGnFgH3DwUGLQMsKS0qTYLxOiIKyMZkzMVppCMHABoNofr8r6cjB3NxCtmYHHbtshXAexlAxR7lcaMhVI//9Yo9ynFlK8IuTa0Ag4gAALmYgwlYgRjc3WwA3S4aMYhBB0zACuRijuran88D9r8AeL9tPoBuJ9cpx+1/QXkfapsYRIRsTMYYKH+LJUhhvYf/uDGYh2w8F/JxZSuA0t+EVfIOpb8ByriIaJvEIDK4BPTAOCyCHOoFH82QIWMcFiEBPZrd130BODAjImUDDryovC+1LQwig8vHMkTDFPZI6HYSJEQjBvlY1uy+/5wC+FR+FGuOr055X2pbWhRECxYsgCRJeOmllyLUHNJTVzyITAxTfU6oOdGIQSaGIQnpQfe5flr5dkztOaHmyHXK+16P7BUFpLGwg+jIkSNYtmwZsrKyItke0tFjmAovajV5by9q8TimBX399FLlK3otSCbl631qO8IKourqauTn52P58uXo1KlTpNtEOumNEREfDflFIwa9kRv0deeHkR8N+cl1gHObNu9N2ggriAoKCjBy5Eg8+eSTkW4P6cSMOCQiVdMaiegJM2LveP67m99fMa0h9zllegi1DaoHxxs2bMDnn3+OI0eOhLS/x+OBx+MJPHa73WpLkgYS0bPBtA0tSIhCItIAHG/wvPscQp6VHTZZmaN27/9pXIciQtVvotPpxKxZs1BSUoK77747pGMcDgesVmtgs9vtYTWUIssEs7A6Pk8jO2pArzrUcqqC6OjRo7h69Sr69esHk8kEk8mEffv24Z133oHJZILX673jmMLCQrhcrsDmdDoj1ngKXx30+VvaWJ0ofTJQtzrUcqo+mj3xxBM4ceJEg+eeffZZpKen49VXX0V0dPQdx5jNZpjN/I1oba6hHDJ8mn48U2bpl9/xvDUNgARtP55J39ehNkFVEMXHx6N3794NnouNjUVCQsIdz1Pr5kENruE8ukC7v63XcK7RdYti4pSlPNznNCsNS0+uW9SW8MpqAzuJDzW9jugkgn+Hbh+h7XVE9uBXDlAr1OJfhb1790agGSTCfizFEMzU5L2jEYN9CH5VYcZUZT0hLch1QEbwaympFeKIyMAqcQansDPioyIvanEKO1GFsqD7dMpQFjWL9KhIMinv2+nByL4vaYtBZHAlmAIvaiM6+96LWpSg+Zmng5YBUREOoiiT8r7UtjCIDO4bXMQGzIzo7PsNmBHSsrGWFCA7wh/Pshdz2di2iEFEOIBibMFrABD2yMh/3BbMwQGsDPm49OeBh98Mq+QdBswD0sNfrZYE4uL5BADYhvlw42uMwyJEw6RqMqwXtfCiFhswQ1UI+fV7Deh4n7JImq9O3WRYyaR8HMtezBBqyzgiooADKMZcZKAMygr2zZ3E9r9ehj2Yi8ywQsgv/Xlg7GnApqzb3+xJbP/rthzlOIZQ28YRETXwDS7iHTxV775muXdMkFWumD6Hk9iGfShq8tsxNSwpwMid9e5rtq2RCbKScrGiPVf5ip7fjrUPDCJqVCXOYCNmYSNm6X6n104ZQPY7yv/zTq/GIMmyrPWCDA243W5YrVZAAmJtelZW7sMt+wApSrkXuFFqi67Pvhuz7zUVUJZjcblgsVia3FdcEBGRIYQSROI+mnFEZJj67Lsx++4fEYVCWBB1TALyL+tbsyQZqLmi/ECMVFt0ffbdmH1fa1OCMBQ8WU3NEnnCWO8T5SQGg4gaFfgK/cPvF7q//Sv0VGUpj4ypyrdckfS/SwdGIBGpjVw6cB4n8SH2YykqwRuYtQcMImrAfUG5U+qVj5SLBhu9yllWru85XaQs5XH/UGWiaUvneCWgB/KxDJkYBi9qG726W0IUuiANj2MahmAmTmEnSjAlpLlt1HrxymoKKFsBvJcBVCgXVjc71cL/esUe5biyFeHXzsZkzMVppEO5tLq5KSb+19ORg7k4hWzw0uq2jEFEAIDP5wH7XwC836q/8aFcpxy3/wXlfdTKxRxMwArE4G7VN3yMRgxi0AETsAK5mKO+OLUKDCJC2Qqg9DeRea/S3wBlxaHvn43JGAMlvcJdisR/3BjMQzaeC+s9SCwGkcG5Lyiz3iPpwIvK+zYnAT0wDosiuijbOCxCAnpE5P1IPwwig/vnFGXpjUjy1Snv25x8LEM0TBFdlC0aMcgHl2hsa1QF0dy5cyFJUoMtPT1dq7aRxq6fVr4dU3tOqDlynfK+15v4Zr0rHkQmhqk+J9ScaMQgE8OQBP5etiWqR0SZmZmorKwMbJ988okW7SIdnF6q7S19Tge/iQcew1RNb2XLine truncated
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
@@ -329,11 +332,11 @@
|
||||
" \"\"\"Plots a single otello board.\n",
|
||||
"\n",
|
||||
" If a matplot axis object is given the board will be plotted into that axis. If not an axis object will be generated.\n",
|
||||
" The image generated will be shown directly.\n",
|
||||
"\n",
|
||||
" Args:\n",
|
||||
" board: The bord that should be plotted. Only a single games is allowed. A numpy array of the form 8x8 is expected.\n",
|
||||
" ax: If needed the\n",
|
||||
"\n",
|
||||
" ax: If needed a matplotlib axis object can be defined that is used to place the board as a sublot into a bigger context.\n",
|
||||
" \"\"\"\n",
|
||||
" plot_all = False\n",
|
||||
" if ax is None:\n",
|
||||
@@ -341,7 +344,7 @@
|
||||
" plot_all = True\n",
|
||||
" fig, ax = plt.subplots(figsize=(fig_size, fig_size))\n",
|
||||
"\n",
|
||||
" ax.set_facecolor(\"#006400\")\n",
|
||||
" ax.set_facecolor(\"#66FF00\")\n",
|
||||
" for i in range(BOARD_SIZE):\n",
|
||||
" for j in range(BOARD_SIZE):\n",
|
||||
" if board[i, j] == -1:\n",
|
||||
@@ -691,7 +694,7 @@
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"123 ms ± 4.08 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n"
|
||||
"110 ms ± 7.6 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -731,12 +734,12 @@
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"10.8 s ± 339 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n"
|
||||
"9.34 s ± 430 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"text/plain": "(array([[[[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n ...,\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]]],\n \n \n [[[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n ...,\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]]],\n \n \n [[[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 1., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n ...,\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 1., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0.,Line truncated
|
||||
"text/plain": "(array([[[[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n ...,\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]]],\n \n \n [[[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n ...,\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]]],\n \n \n [[[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.]],\n \n ...,\n \n [[ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n ...,\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0., 0.],\n [ 0., 0., 0., ..., 0., 0.,Line truncated
|
||||
},
|
||||
"execution_count": 19,
|
||||
"metadata": {},
|
||||
@@ -1040,7 +1043,7 @@
|
||||
{
|
||||
"data": {
|
||||
"text/plain": "<Figure size 1200x300 with 3 Axes>",
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA30AAAEiCAYAAABNzbuyAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAAA+dElEQVR4nO3dfXBcV33G8WdXErLBkrBNRGwkhySS7JJImQQwTTxWeZMbJ3JCh4lbMAUZSlswENDWAXcGGuoSQ7A0aZvgtqmR0iEhmA5hHHsIdnixRUxwTACLArFUmkaunarTOFopjlVJe/vHrmT5RdLu3Zfzu3e/n5mdrKXdPQ/n3vuwZ3d1N+J5nicAAAAAQChFXQcAAAAAAOQPiz4AAAAACDEWfQAAAAAQYiz6AAAAACDEWPQBAAAAQIix6AMAAACAEGPRBwAAAAAhxqIPAAAAAEKstNADJhIJnThxQhUVFYpEIoUeHoBBnudpeHhYS5cuVTTq7rUo+gnAxVjoKPoJwMWk208FX/SdOHFCtbW1hR4WQAAMDAyopqbG2fj0E4DZuOwo+gnAbObqp4Iv+ioqKs7+Y36hR5f08rTrLsYnAxmsZXA9/rQM5/SDA877STK1PZxlcD0+GcgwQwaXHUU/kcHM+GQwmWGufir4om/qIwnzJW0o9OiSHpJ0WtIrJb3XwfhkIIO1DK7Hl6QHJb0s5x9Zct5Pko3t4TqD6/HJQIbzGego+okMZsYng60MafYTJ3IBAAAAgBBj0QcAAAAAIcaiDwAAAABCrOB/0wcAAACg8GoX1arthjbVV9erYl6Fhs8Mq2+wT92HujXwwoDreMgjFn0AAABAiDU3NCvWElNrU6sSXkKSFI1GlUgkr9+57k49evRRdezrUE9fj8uoyBM+3gkAAACEVGxNTAc2H9DaxrWKRqMqLSlVaUmpopFp16NR3dR4kw7ecVDtLe2uIyMPWPQBAAAAIdTe0q7tt22XJJWVlM1628nfd6zvYOEXQiz6AAAAgJBpbmhWx/oOX/ftWN+h1fWrc5wILmW86Dt48KDWrVunpUuXKhKJ6Nvf/nYeYgFA5ugnAFbRTyi0WEtMYxNjvu47NjGm9jW82xcmGS/6XnrpJV1zzTW677778pEHAHyjnwBYRT+hkGoX1aq1qXXOj3TOpKykTLc03aKahTU5TgZXMj5759q1a7V27dp8ZAGArNBPAKyin1BIbTe0KeElFM3iL7kSXkIbV23U1j1bc5gMruT9KxtGR0c1Ojo69e94PJ7vIQEgLfQTAKvoJ2Sjvro+68fw5Kmuui4HaWBB3k/ksm3bNlVVVU1damtr8z0kAKSFfgJgFf2EbFTMq1A0mt3T/JJoiSrnVeYoEVzL+6Jvy5YtGhoamroMDAzke0gASAv9BMAq+gnZGD4zPPXF635NJCYUP8M7zGGR9493lpeXq7y8PN/DAEDG6CcAVtFPyEbfYF/WjxFRRP2D/TlIAwv4nj4AAAAgRLoPdSsaye5pfjQSVdcTXTlKBNcyfqdvZGRE/f1nV/3/8R//oZ///OdatGiRli1bltNwAJAJ+gmAVfQTCmnghQHtObpHaxvX+vrahrGJMe3t3avjp47nIR1cyPglgCNHjujaa6/VtddeK0lqb2/Xtddeq8997nM5DwcAmaCfAFhFP6HQtu/b7vt7+kqiJerc15njRHAp43f63vrWt8rzvHxkAYCs0E8ArKKfUGg9fT2K7YqpY31Hxvfd/M3N6unryUMquMLf9AEAAAAh1Lm/U7FdMUnJj2zOZvL3sV0xde7nXb6wYdEHAAAAhFTn/k41392svb17lUgkND4xrvGJcSW8hMYmxpLXEwnt7d2r5rubWfCFVN6/sgEAAACAOz19Perp61HNwhptXLVRddV1qpxXqfiZuPoH+9X1RBcnbQk5Fn0AAABAETh+6ri27tnqOgYc4OOdAAAAABBiLPoAAAAAIMRY9AEAAABAiLHoAwAAAIAQi3gF/qbQeDyuqqqq5D9eWciRU16W5EmKSJrvYHwykMFaBtfjS9Lp5H+GhoZUWVnpKISBfpJsbA/XGVyPTwYynM9AR9FPZDAzPhlsZUizn9yevfO0w7E9x+OTgQzWMrge3xrXc2Fhe7jO4Hp8MpDBKtfzYGFbkMH9+GSwlWEObhd9vNNHBjK4z+B6fMlmUfJKenHvk2Qgw3TWOop+Ku4Mrscng60MafaTu0XffEnvdTDuQ0pOjqvxyUAGaxlcjy9JDypZnFYU8/5gIYPr8clAhvNZ6qhi3xZkcD8+GWxlSLOfOJELAAAAAIQYiz4AAAAACDEWfQAAAAAQYm5P5IKM1S6qVdsNbaqvrlfFvAoNnxlW32Cfug91a+CFgcKEGJF0TFJc0pikMkmVkhokLShMBOeYA+AC9JMRzAFwAQv9ZCGDBcyDGyz6AqK5oVmxlpham1qV8BKSpGg0qkQief3OdXfq0aOPqmNfh3r6evIT4qSkXknPKXmWIunsGYsk6WlJyyQ1SlqSnwjOMQfABegnI5gD4AIW+slCBguYB7f4eGcAxNbEdGDzAa1tXKtoNKrSklKVlpQqGpl2PRrVTY036eAdB9Xe0p7bAJ6ko5L2ShqY9jPvItcHUrc7Ou1nYcAcABdFPxnAHAAX5byfjGSwgHlwj0Wfce0t7dp+23ZJUllJ2ay3nfx9x/qO3B4svZIOp67P9SRh8veHU/cLC+YAuAD9ZARzAFzAQj9ZyGAB82ADiz7Dmhua1bG+w9d9O9Z3aHX96uxDnNTZJxOZOpy6f9AxB8AF6CcjmAPgAhb6yUIGC5gHOzJa9G3btk1vfvObVVFRoerqar3rXe/SM888k69sRS/WEtPYxJiv+45NjKl9TQ5eIenV2b8HyVRE4XglmTkIBPqpsOgnI5iDwKCjCsdCP1nIYAHzYEdGi74DBw5o06ZNevLJJ7V//36NjY1pzZo1eumll/KVr2jVLqpVa1PrnG+Dz6SspEy3NN2imoU1/kOMKHlCAL9/9+Gl7j/iP4JzzEFg0E+FQz8ZwRwECh1VGBb6yUIGC5gHWzJa9D322GNqa2vTVVddpWuuuUbd3d167rnn9NOf/jRf+YpW2w1tU2c28ivhJbRx1Ub/D3BM/l9BnhRJPU5QMQeBQT8VDv1kBHMQKHRUYVjoJwsZLGAebMnqKxuGhoYkSYsWLZrxNqOjoxodHZ36dzwez2bIolFfXZ/1Y3jyVFdd5/8BcrWpgrzJmYPAop/yh34ygjkItLk6in7yx0I/WchgAfNgi+8TuSQSCX3yk5/UqlWrdPXVV894u23btqmqqmrqUltb63fIolIxr0LRaHbn2SmJlqhyXqX/BxhT9qf09lKPE1TMQSDRT/lFPxnBHARWOh1FP/ljoZ8sZLCAebDF95bYtGmTfvnLX+rhhx+e9XZbtmzR0NDQ1GVgYGDW2yNp+Mzw1JdV+jWRmFD8TBavDJYpNx8d8vdRbhuYg0Cin/KLfjKCOQisdDqKfvLHQj9ZyGAB82CLr493fuxjH9OePXt08OBB1dTM/seV5eXlKi8v9xWumPUN9mX9GBFF1D/Y7/8BcvXCSpBfoGEOAod+yj/6yQjmIJDS7Sj6yR8L/WQhgwXMgy0ZvdPneZ4+9rGP6ZFHHtH3v/99XX755fnKVfS6D3UrGsnuLfFoJKquJ7r8P0CDcvPRoYYsH8Ml5iAw6KfCoZ+MYA4ChY4qDAv9ZCGDBcyDLRltiU2bNulrX/uaHnroIVVUVOj555/X888/r5dffjlf+YrWwAsD2nN0T1bfbbL76G4dP3Xcf4gFkpYpu++AWpZ6nKBiDgKDfioc+skI5iBQ6KjCsNBPFjJYwDzYktGib8eOHRoaGtJb3/pWLVmyZOryjW98I1/5itr2fdt9f7dJSbREnfs6sw/RqOy+A6ox+wjOMQeBQD8VFv1kBHMQGHRU4VjoJwsZLGAe7Mj4450Xu7S1teUpXnHr6etRbFfM1303f3Ozevp6sg+xRNJKn/ddmbp/0DEHgUA/FRb9ZARzEBh0VOFY6CcLGSxgHuzI7oO2yLvO/Z1TB8tcb49P/j62K6bO/Tl8ZaRRZ59UzPUxosnfr1S4XkFmDoAL0E9GMAfABSz0k4UMFjAPNrDoC4DO/Z1qvrtZe3v3KpFIaHxiXOMT40p4CY1NjCWvJxLa27tXzXc35/4giUhqknSzpNppP4tc5Hpt6nZNyv5U4pYwB8BF0U8GMAfARTnvJyMZLGAe3PP1lQ0ovJ6+HvX09ahmYY02rtqouuo6Vc6rVPxMXP2D/ep6oiv/f+i6JHUZkXRMUlzJL/UtU/KU3w0K/wkBmAPgAvSTEcwBcAEL/WQhgwXMg1ss+gLm+Knj2rpnq9sQCyRd5zaCc8wBcAH6yQjmALiAhX6ykMEC5sENPt4JAAAAACHGog8AAAAAQoxFHwAAAACEGIs+AAAAAAixiOd5XiEHjMfjqqqqSv7jlYUcOeVlSZ6Sp6qe72B8MpDBWgbX40vS6eR/hoaGVFlZ6SiEgX6SbGwP1xlcj08GMpzPQEfRT2QwMz4ZbGVIs5/cnr3ztMOxPcfjk4EM1jK4Ht8a13NhYXu4zuB6fDKQwSrX82BhW5DB/fhksJVhDm4XfbzTRwYyuM/genzJZlHySnpx75NkIMN01jqKfiruDK7HJ4OtDGn2k7tF33xJ73Uw7kNKTo6r8clABmsZXI8vSQ8qWZxWFPP+YCGD6/HJQIbzWeqoYt8WZHA/PhlsZUiznziRCwAAAACEGIs+AAAAAAgxFn0AAAAAEGJuT+SCQKpdVKu2G9pUX12vinkVGj4zrL7BPnUf6tbACwP5DzAi6ZikuKQxSWWSKiU1SFqQ/+ElA3NgJANgjYnjwnFHWZgDCxkAa0wcFzyHMpOh0Fj0IW3NDc2KtcTU2tSqhJeQJEWjUSUSyet3rrtTjx59VB37OtTT15P7ACcl9Up6TsmzJElnz5gkSU9LWiapUdKS3A8Line truncated
|
||||
"image/png": "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 truncated
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
|
||||
Reference in new issue
Block a user