{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## DFO Nutrient Comparison" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import os\n", "import pandas as pd\n", "import netCDF4 as nc\n", "import datetime as dt\n", "from salishsea_tools import evaltools as et, viz_tools\n", "import gsw\n", "import matplotlib.gridspec as gridspec\n", "import matplotlib as mpl\n", "import matplotlib.dates as mdates\n", "import cmocean as cmo\n", "import scipy.interpolate as sinterp\n", "import pickle\n", "import cmocean\n", "from matplotlib.colors import LogNorm\n", "\n", "mpl.rc('xtick', labelsize=8)\n", "mpl.rc('ytick', labelsize=8)\n", "mpl.rc('legend', fontsize=8)\n", "mpl.rc('axes', titlesize=8)\n", "mpl.rc('axes', labelsize=8)\n", "mpl.rc('figure', titlesize=8)\n", "mpl.rc('font', size=8)\n", "mpl.rc('text', usetex=True)\n", "mpl.rc('text.latex', preamble =r'''\n", " \\usepackage{txfonts}\n", " \\usepackage{lmodern}\n", " ''')\n", "mpl.rc('font', family='sans-serif', weight='normal', style='normal')\n", "\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "PATH= '/results2/SalishSea/nowcast-green.201905/'\n", "modver='HC1905'\n", "start_date = dt.datetime(2013,1,1)\n", "end_date = dt.datetime(2017,1,1)\n", "flen=1\n", "namfmt='nowcast'\n", "#varmap={'N':'nitrate','Si':'silicon','Ammonium':'ammonium'}\n", "filemap={'vosaline':'grid_T','votemper':'grid_T'}\n", "#gridmap={'nitrate':'tmask','silicon':'tmask','ammonium':'tmask'}\n", "fdict={'ptrc_T':1,'grid_T':1}\n", "rematch=True\n", "if rematch==True:\n", " df1=et.loadDFOCTD()\n", " df1.head()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(Lat,Lon)= 48.95583333333333 -125.10966666666667 not matched to domain\n", "(Lat,Lon)= 48.963 -125.115 not matched to domain\n", "(Lat,Lon)= 48.96383333333333 -125.1145 not matched to domain\n", "(Lat,Lon)= 48.964666666666666 -125.12581666666667 not matched to domain\n", "(Lat,Lon)= 49.01083333333333 -125.17 not matched to domain\n", "(Lat,Lon)= 49.011 -125.17083333333333 not matched to domain\n", "(Lat,Lon)= 49.01116666666667 -125.17 not matched to domain\n", "(Lat,Lon)= 49.01133333333333 -125.17033333333333 not matched to domain\n", "(Lat,Lon)= 49.01133333333333 -125.17 not matched to domain\n", "(Lat,Lon)= 49.020833333333336 -125.1565 not matched to domain\n", "(Lat,Lon)= 49.021 -125.157 not matched to domain\n", "(Lat,Lon)= 49.021 -125.15666666666667 not matched to domain\n", "(Lat,Lon)= 49.021 -125.1565 not matched to domain\n", "(Lat,Lon)= 49.021 -125.15616666666666 not matched to domain\n", "(Lat,Lon)= 49.029333333333334 -125.15333333333334 not matched to domain\n", "(Lat,Lon)= 49.0295 -125.15266666666666 not matched to domain\n", "(Lat,Lon)= 49.029666666666664 -125.15333333333334 not matched to domain\n", "(Lat,Lon)= 49.029666666666664 -125.153 not matched to domain\n", "(Lat,Lon)= 49.029666666666664 -125.1525 not matched to domain\n", "(Lat,Lon)= 49.03033333333333 -125.15333333333334 not matched to domain\n", "(Lat,Lon)= 49.04233333333333 -125.15283333333333 not matched to domain\n", "(Lat,Lon)= 49.0425 -125.1525 not matched to domain\n", "(Lat,Lon)= 49.0425 -125.152 not matched to domain\n", "(Lat,Lon)= 49.0425 -125.1515 not matched to domain\n", "(Lat,Lon)= 49.04266666666667 -125.15216666666667 not matched to domain\n", "(Lat,Lon)= 49.042833333333334 -125.15266666666666 not matched to domain\n", "(Lat,Lon)= 49.052 -125.14283333333333 not matched to domain\n", "(Lat,Lon)= 49.052 -125.1425 not matched to domain\n", "(Lat,Lon)= 49.0525 -125.14316666666667 not matched to domain\n", "(Lat,Lon)= 49.0525 -125.143 not matched to domain\n", "(Lat,Lon)= 49.0525 -125.14266666666667 not matched to domain\n", "(Lat,Lon)= 49.053 -125.14316666666667 not matched to domain\n", "(Lat,Lon)= 49.07083333333333 -125.157 not matched to domain\n", "(Lat,Lon)= 49.07083333333333 -125.15666666666667 not matched to domain\n", "(Lat,Lon)= 49.071333333333335 -125.15716666666667 not matched to domain\n", "(Lat,Lon)= 49.071333333333335 -125.15683333333334 not matched to domain\n", "(Lat,Lon)= 49.071666666666665 -125.157 not matched to domain\n", "(Lat,Lon)= 49.083 -125.17183333333334 not matched to domain\n", "(Lat,Lon)= 49.08316666666666 -125.17166666666667 not matched to domain\n", "(Lat,Lon)= 49.083333333333336 -125.17183333333334 not matched to domain\n", "(Lat,Lon)= 49.08383333333333 -125.17233333333333 not matched to domain\n", "(Lat,Lon)= 49.08416666666667 -125.173 not matched to domain\n", "(Lat,Lon)= 49.09166666666667 -125.19466666666666 not matched to domain\n", "(Lat,Lon)= 49.091833333333334 -125.19416666666666 not matched to domain\n", "(Lat,Lon)= 49.29533333333333 -122.9685 not matched to domain\n", "(Lat,Lon)= 49.29966666666667 -123.09016666666666 not matched to domain\n", "(Lat,Lon)= 49.315666666666665 -122.9375 not matched to domain\n", "(Lat,Lon)= 49.969833333333334 -124.68516666666666 not matched to domain\n", "(Lat,Lon)= 49.97 -124.68516666666666 not matched to domain\n", "(Lat,Lon)= 49.97083333333333 -124.68266666666666 not matched to domain\n", "(Lat,Lon)= 49.97083333333333 -124.6825 not matched to domain\n", "(Lat,Lon)= 49.9725 -124.68716666666667 not matched to domain\n", "(Lat,Lon)= 49.97266666666667 -124.686 not matched to domain\n", "(Lat,Lon)= 49.972833333333334 -124.686 not matched to domain\n", "(Lat,Lon)= 49.9745 -124.68083333333334 not matched to domain\n", "(Lat,Lon)= 49.974666666666664 -124.68133333333333 not matched to domain\n", "(Lat,Lon)= 49.9785 -124.691 not matched to domain\n", "(Lat,Lon)= 49.978833333333334 -124.68883333333333 not matched to domain\n", "(Lat,Lon)= 49.979 -124.68883333333333 not matched to domain\n", "(Lat,Lon)= 49.979 -124.68833333333333 not matched to domain\n", "(Lat,Lon)= 49.98 -124.68666666666667 not matched to domain\n", "(Lat,Lon)= 49.98016666666667 -124.68666666666667 not matched to domain\n", "(Lat,Lon)= 49.982 -124.69716666666666 not matched to domain\n", "(Lat,Lon)= 49.982 -124.6925 not matched to domain\n", "(Lat,Lon)= 49.983333333333334 -124.69383333333333 not matched to domain\n", "(Lat,Lon)= 49.98433333333333 -124.68966666666667 not matched to domain\n", "(Lat,Lon)= 49.98466666666667 -124.68883333333333 not matched to domain\n", "(Lat,Lon)= 49.98833333333333 -124.70416666666667 not matched to domain\n", "(Lat,Lon)= 49.9885 -124.70416666666667 not matched to domain\n", "(Lat,Lon)= 49.98866666666667 -124.6995 not matched to domain\n", "(Lat,Lon)= 49.98866666666667 -124.69916666666667 not matched to domain\n", "(Lat,Lon)= 49.9915 -124.6955 not matched to domain\n", "(Lat,Lon)= 49.993 -124.712 not matched to domain\n", "(Lat,Lon)= 49.99333333333333 -124.71183333333333 not matched to domain\n", "(Lat,Lon)= 49.99483333333333 -124.709 not matched to domain\n", "(Lat,Lon)= 49.995333333333335 -124.70866666666667 not matched to domain\n", "(Lat,Lon)= 49.99633333333333 -124.70466666666667 not matched to domain\n", "(Lat,Lon)= 49.9965 -124.70483333333334 not matched to domain\n", "(Lat,Lon)= 50.00416666666667 -124.71883333333334 not matched to domain\n", "(Lat,Lon)= 50.004333333333335 -124.71866666666666 not matched to domain\n", "(Lat,Lon)= 50.004666666666665 -124.71333333333334 not matched to domain\n", "(Lat,Lon)= 50.00516666666667 -124.7145 not matched to domain\n", "(Lat,Lon)= 50.00633333333333 -124.70683333333334 not matched to domain\n", "(Lat,Lon)= 50.00683333333333 -124.70616666666666 not matched to domain\n", "(Lat,Lon)= 50.01683333333333 -124.72416666666666 not matched to domain\n", "(Lat,Lon)= 50.01733333333333 -124.7245 not matched to domain\n", "(Lat,Lon)= 50.01766666666666 -124.72116666666666 not matched to domain\n", "(Lat,Lon)= 50.01766666666666 -124.72083333333333 not matched to domain\n", "(Lat,Lon)= 50.0195 -124.71433333333333 not matched to domain\n", "(Lat,Lon)= 50.019666666666666 -124.71483333333333 not matched to domain\n", "(Lat,Lon)= 50.02 -124.7385 not matched to domain\n", "(Lat,Lon)= 50.02016666666667 -124.73866666666666 not matched to domain\n", "(Lat,Lon)= 50.0225 -124.741 not matched to domain\n", "(Lat,Lon)= 50.022666666666666 -124.741 not matched to domain\n", "(Lat,Lon)= 50.025 -124.74383333333333 not matched to domain\n", "(Lat,Lon)= 50.025333333333336 -124.74433333333333 not matched to domain\n", "(Lat,Lon)= 50.027 -124.74683333333333 not matched to domain\n", "(Lat,Lon)= 50.02883333333333 -124.7325 not matched to domain\n", "(Lat,Lon)= 50.02916666666667 -124.7395 not matched to domain\n", "(Lat,Lon)= 50.02916666666667 -124.7385 not matched to domain\n", "(Lat,Lon)= 50.032333333333334 -124.72933333333333 not matched to domain\n", "(Lat,Lon)= 50.032833333333336 -124.72966666666667 not matched to domain\n", "(Lat,Lon)= 50.034666666666666 -124.74383333333333 not matched to domain\n", "(Lat,Lon)= 50.03616666666667 -124.72116666666666 not matched to domain\n", "(Lat,Lon)= 50.0365 -124.72 not matched to domain\n", "(Lat,Lon)= 50.040333333333336 -124.71616666666667 not matched to domain\n", "(Lat,Lon)= 50.04183333333334 -124.71916666666667 not matched to domain\n", "(Lat,Lon)= 50.04366666666667 -124.72283333333333 not matched to domain\n", "(Lat,Lon)= 50.05 -124.7225 not matched to domain\n", "(Lat,Lon)= 50.050333333333334 -124.71683333333333 not matched to domain\n", "(Lat,Lon)= 50.05166666666667 -124.713 not matched to domain\n", "(Lat,Lon)= 50.057 -124.71816666666666 not matched to domain\n", "(Lat,Lon)= 50.05766666666667 -124.70983333333334 not matched to domain\n", "(Lat,Lon)= 50.058 -124.72283333333333 not matched to domain\n", "(Lat,Lon)= 50.058 -124.717 not matched to domain\n", "(Lat,Lon)= 50.0655 -124.70916666666666 not matched to domain\n", "(Lat,Lon)= 50.066 -124.71333333333334 not matched to domain\n", "(Lat,Lon)= 50.06733333333333 -124.72016666666667 not matched to domain\n", "(Lat,Lon)= 50.0795 -124.718 not matched to domain\n", "(Lat,Lon)= 50.07966666666667 -124.71166666666667 not matched to domain\n", "(Lat,Lon)= 50.07983333333333 -124.71416666666667 not matched to domain\n", "(Lat,Lon)= 50.17333333333333 -125.34011666666666 not matched to domain\n", "(Lat,Lon)= 50.40533333333333 -125.76346666666667 not matched to domain\n", "(Lat,Lon)= 50.45666666666666 -126.1651 not matched to domain\n", "(Lat,Lon)= 50.45666666666666 -126.1639 not matched to domain\n", "(Lat,Lon)= 50.45666666666666 -126.16348333333333 not matched to domain\n", "(Lat,Lon)= 50.45713333333333 -126.16475 not matched to domain\n", "(Lat,Lon)= 50.45718333333333 -126.16443333333333 not matched to domain\n", "(Lat,Lon)= 50.45726666666667 -126.16365 not matched to domain\n", "(Lat,Lon)= 50.45745 -126.16433333333333 not matched to domain\n", "(Lat,Lon)= 50.458016666666666 -126.15373333333334 not matched to domain\n", "(Lat,Lon)= 50.471666666666664 -126.1591 not matched to domain\n", "(Lat,Lon)= 50.4735 -126.16683333333333 not matched to domain\n", "(Lat,Lon)= 50.48016666666667 -126.19516666666667 not matched to domain\n", "(Lat,Lon)= 50.48016666666667 -126.1615 not matched to domain\n", "(Lat,Lon)= 50.48383333333334 -126.18633333333334 not matched to domain\n", "(Lat,Lon)= 50.4845 -126.26616666666666 not matched to domain\n", "(Lat,Lon)= 50.48453333333333 -126.39215 not matched to domain\n", "(Lat,Lon)= 50.48683333333334 -126.23916666666666 not matched to domain\n", "(Lat,Lon)= 50.487 -126.24116666666667 not matched to domain\n", "(Lat,Lon)= 50.48883333333333 -126.35466666666667 not matched to domain\n", "(Lat,Lon)= 50.48883333333333 -126.33266666666667 not matched to domain\n", "(Lat,Lon)= 50.49166666666667 -126.37233333333333 not matched to domain\n", "(Lat,Lon)= 50.49166666666667 -126.2175 not matched to domain\n", "(Lat,Lon)= 50.49366666666667 -126.241 not matched to domain\n", "(Lat,Lon)= 50.49733333333333 -126.349 not matched to domain\n", "(Lat,Lon)= 50.4975 -126.347 not matched to domain\n", "(Lat,Lon)= 50.4985 -126.272 not matched to domain\n", "(Lat,Lon)= 50.504333333333335 -126.4035 not matched to domain\n", "(Lat,Lon)= 50.50528333333333 -126.25658333333334 not matched to domain\n", "(Lat,Lon)= 50.60106666666667 -126.35993333333333 not matched to domain\n", "(Lat,Lon)= 50.6117 -126.2906 not matched to domain\n", "(Lat,Lon)= 50.629933333333334 -126.39663333333333 not matched to domain\n", "(Lat,Lon)= 50.638666666666666 -126.30083333333333 not matched to domain\n", "(Lat,Lon)= 50.66675 -126.44075 not matched to domain\n", "(Lat,Lon)= 50.7607 -126.5075 not matched to domain\n", "(Lat,Lon)= 50.77965 -126.62056666666666 not matched to domain\n", "(Lat,Lon)= 50.8272 -126.5612 not matched to domain\n", "(Lat,Lon)= 50.83016666666666 -126.26748333333333 not matched to domain\n", "(Lat,Lon)= 50.83936666666666 -126.26266666666666 not matched to domain\n", "(Lat,Lon)= 50.84276666666667 -126.47793333333334 not matched to domain\n", "(Lat,Lon)= 50.87348333333333 -126.72328333333333 not matched to domain\n", "(Lat,Lon)= 50.88633333333333 -126.59383333333334 not matched to domain\n", "(Lat,Lon)= 51.67483333333333 -127.28466666666667 not matched to domain\n", "(Lat,Lon)= 51.67483333333333 -127.2845 not matched to domain\n", "(Lat,Lon)= 51.675333333333334 -127.28516666666667 not matched to domain\n", "(Lat,Lon)= 51.67583333333333 -127.28483333333334 not matched to domain\n", "(Lat,Lon)= 51.676833333333335 -127.29916666666666 not matched to domain\n", "(Lat,Lon)= 51.67733333333334 -127.33316666666667 not matched to domain\n", "(Lat,Lon)= 51.678 -127.334 not matched to domain\n", "(Lat,Lon)= 51.67816666666667 -127.334 not matched to domain\n", "(Lat,Lon)= 51.678666666666665 -127.33216666666667 not matched to domain\n", "progress: 0.0%\n", "progress: 0.979274631694811%\n", "progress: 1.958549263389622%\n", "progress: 2.937823895084433%\n", "progress: 3.917098526779244%\n", "progress: 4.896373158474055%\n", "progress: 5.875647790168866%\n", "progress: 6.854922421863677%\n", "progress: 7.834197053558488%\n", "progress: 8.8134716852533%\n", "progress: 9.79274631694811%\n", "progress: 10.772020948642922%\n", "progress: 11.751295580337732%\n", "progress: 12.730570212032543%\n", "progress: 13.709844843727353%\n", "progress: 14.689119475422165%\n", "progress: 15.668394107116976%\n", "progress: 16.647668738811788%\n", "progress: 17.6269433705066%\n", "progress: 18.60621800220141%\n", "progress: 19.58549263389622%\n", "progress: 20.56476726559103%\n", "progress: 21.544041897285844%\n", "progress: 22.52331652898065%\n", "progress: 23.502591160675465%\n", "progress: 24.481865792370275%\n", "progress: 25.461140424065086%\n", "progress: 26.440415055759896%\n", "progress: 27.419689687454706%\n", "progress: 28.39896431914952%\n", "progress: 29.37823895084433%\n", "progress: 30.35751358253914%\n", "progress: 31.336788214233952%\n", "progress: 32.31606284592876%\n", "progress: 33.295337477623576%\n", "progress: 34.27461210931838%\n", "progress: 35.2538867410132%\n", "progress: 36.233161372708004%\n", "progress: 37.21243600440282%\n", "progress: 38.19171063609763%\n", "progress: 39.17098526779244%\n", "progress: 40.15025989948725%\n", "progress: 41.12953453118206%\n", "progress: 42.108809162876874%\n", "progress: 43.08808379457169%\n", "progress: 44.067358426266495%\n", "progress: 45.0466330579613%\n", "progress: 46.02590768965612%\n", "progress: 47.00518232135093%\n", "progress: 47.984456953045736%\n", "progress: 48.96373158474055%\n", "progress: 49.94300621643536%\n", "progress: 50.92228084813017%\n", "progress: 51.90155547982498%\n", "progress: 52.88083011151979%\n", "progress: 53.860104743214606%\n", "progress: 54.83937937490941%\n", "progress: 55.81865400660423%\n", "progress: 56.79792863829904%\n", "progress: 57.77720326999385%\n", "progress: 58.75647790168866%\n", "progress: 59.73575253338347%\n", "progress: 60.71502716507828%\n", "progress: 61.6943017967731%\n", "progress: 62.673576428467904%\n", "progress: 63.65285106016272%\n", "progress: 64.63212569185752%\n", "progress: 65.61140032355233%\n", "progress: 66.59067495524715%\n", "progress: 67.56994958694196%\n", "progress: 68.54922421863677%\n", "progress: 69.52849885033157%\n", "progress: 70.5077734820264%\n", "progress: 71.4870481137212%\n", "progress: 72.46632274541601%\n", "progress: 73.44559737711083%\n", "progress: 74.42487200880564%\n", "progress: 75.40414664050044%\n", "progress: 76.38342127219526%\n", "progress: 77.36269590389007%\n", "progress: 78.34197053558488%\n", "progress: 79.3212451672797%\n", "progress: 80.3005197989745%\n", "progress: 81.27979443066931%\n", "progress: 82.25906906236412%\n", "progress: 83.23834369405894%\n", "progress: 84.21761832575375%\n", "progress: 85.19689295744855%\n", "progress: 86.17616758914338%\n", "progress: 87.15544222083818%\n", "progress: 88.13471685253299%\n", "progress: 89.11399148422781%\n", "progress: 90.0932661159226%\n", "progress: 91.07254074761742%\n", "progress: 92.05181537931225%\n", "progress: 93.03109001100705%\n", "progress: 94.01036464270186%\n", "progress: 94.98963927439667%\n", "progress: 95.96891390609147%\n", "progress: 96.9481885377863%\n", "progress: 97.9274631694811%\n", "progress: 98.90673780117592%\n", "progress: 99.88601243287071%\n" ] } ], "source": [ "\n", "saveloc='/data/eolson/MEOPAR/SS36runs/calcFiles/evalMatches/'\n", "fname=f'data_DFOCTD_{modver}_{start_date.strftime(\"%Y%m%d\")}_{end_date.strftime(\"%Y%m%d\")}'\n", "if rematch==True:\n", " data=et.matchData(df1,filemap, fdict, start_date, end_date, namfmt, PATH, flen)\n", " pickle.dump(data,open(os.path.join(saveloc,fname)+'.pkl','wb'))\n", "else:\n", " data=pickle.load(open(os.path.join(saveloc,fname)+'.pkl','rb'))" ] }, { "cell_type": "code", "execution_count": 4, "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>Year</th>\n", " <th>Month</th>\n", " <th>Day</th>\n", " <th>Hour</th>\n", " <th>Lat</th>\n", " <th>Lon</th>\n", " <th>Z</th>\n", " <th>SA</th>\n", " <th>CT</th>\n", " <th>Fluor</th>\n", " <th>dtUTC</th>\n", " <th>j</th>\n", " <th>i</th>\n", " <th>mod_vosaline</th>\n", " <th>mod_votemper</th>\n", " <th>k</th>\n", " </tr>\n", " </thead>\n", " <tbody>\n", " <tr>\n", " <th>0</th>\n", " <td>2013.0</td>\n", " <td>1.0</td>\n", " <td>10.0</td>\n", " <td>17.118056</td>\n", " <td>49.329667</td>\n", " <td>-124.081</td>\n", " <td>0.892338</td>\n", " <td>27.814801</td>\n", " <td>6.753649</td>\n", " <td>NaN</td>\n", " <td>2013-01-10 17:07:05</td>\n", " <td>526</td>\n", " <td>206</td>\n", " <td>28.452301</td>\n", " <td>7.408990</td>\n", " <td>0</td>\n", " </tr>\n", " <tr>\n", " <th>1</th>\n", " <td>2013.0</td>\n", " <td>1.0</td>\n", " <td>10.0</td>\n", " <td>17.118056</td>\n", " <td>49.329667</td>\n", " <td>-124.081</td>\n", " <td>1.883821</td>\n", " <td>27.826002</td>\n", " <td>6.762110</td>\n", " <td>NaN</td>\n", " <td>2013-01-10 17:07:05</td>\n", " <td>526</td>\n", " <td>206</td>\n", " <td>28.452488</td>\n", " <td>7.410102</td>\n", " <td>1</td>\n", " </tr>\n", " <tr>\n", " <th>2</th>\n", " <td>2013.0</td>\n", " <td>1.0</td>\n", " <td>10.0</td>\n", " <td>17.118056</td>\n", " <td>49.329667</td>\n", " <td>-124.081</td>\n", " <td>2.974446</td>\n", " <td>27.842222</td>\n", " <td>6.764341</td>\n", " <td>NaN</td>\n", " <td>2013-01-10 17:07:05</td>\n", " <td>526</td>\n", " <td>206</td>\n", " <td>28.452883</td>\n", " <td>7.411254</td>\n", " <td>2</td>\n", " </tr>\n", " <tr>\n", " <th>3</th>\n", " <td>2013.0</td>\n", " <td>1.0</td>\n", " <td>10.0</td>\n", " <td>17.118056</td>\n", " <td>49.329667</td>\n", " <td>-124.081</td>\n", " <td>4.065065</td>\n", " <td>27.901148</td>\n", " <td>6.812357</td>\n", " <td>NaN</td>\n", " <td>2013-01-10 17:07:05</td>\n", " <td>526</td>\n", " <td>206</td>\n", " <td>28.454327</td>\n", " <td>7.413784</td>\n", " <td>4</td>\n", " </tr>\n", " <tr>\n", " <th>4</th>\n", " <td>2013.0</td>\n", " <td>1.0</td>\n", " <td>10.0</td>\n", " <td>17.118056</td>\n", " <td>49.329667</td>\n", " <td>-124.081</td>\n", " <td>4.957386</td>\n", " <td>28.036150</td>\n", " <td>6.874438</td>\n", " <td>NaN</td>\n", " <td>2013-01-10 17:07:05</td>\n", " <td>526</td>\n", " <td>206</td>\n", " <td>28.454327</td>\n", " <td>7.413784</td>\n", " <td>4</td>\n", " </tr>\n", " </tbody>\n", "</table>\n", "</div>" ], "text/plain": [ " Year Month Day Hour Lat Lon Z SA \\\n", "0 2013.0 1.0 10.0 17.118056 49.329667 -124.081 0.892338 27.814801 \n", "1 2013.0 1.0 10.0 17.118056 49.329667 -124.081 1.883821 27.826002 \n", "2 2013.0 1.0 10.0 17.118056 49.329667 -124.081 2.974446 27.842222 \n", "3 2013.0 1.0 10.0 17.118056 49.329667 -124.081 4.065065 27.901148 \n", "4 2013.0 1.0 10.0 17.118056 49.329667 -124.081 4.957386 28.036150 \n", "\n", " CT Fluor dtUTC j i mod_vosaline mod_votemper \\\n", "0 6.753649 NaN 2013-01-10 17:07:05 526 206 28.452301 7.408990 \n", "1 6.762110 NaN 2013-01-10 17:07:05 526 206 28.452488 7.410102 \n", "2 6.764341 NaN 2013-01-10 17:07:05 526 206 28.452883 7.411254 \n", "3 6.812357 NaN 2013-01-10 17:07:05 526 206 28.454327 7.413784 \n", "4 6.874438 NaN 2013-01-10 17:07:05 526 206 28.454327 7.413784 \n", "\n", " k \n", "0 0 \n", "1 1 \n", "2 2 \n", "3 4 \n", "4 4 " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data.head()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# save pickle as csv for TJ:\n", "data.to_csv(os.path.join(saveloc,fname)+'.csv',index=False)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "/data/eolson/MEOPAR/SS36runs/calcFiles/evalMatches/data_DFOCTD_HC1905_20130101_20170101.csv\n" ] } ], "source": [ "print(os.path.join(saveloc,fname)+'.csv')" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def rotmap(lon,lat,lon0,lat0,phi):\n", " # rotate around point (pick one near center of domain)\n", " # phi in degrees\n", " # first scale lats to match and center around lat0,lon0:\n", " lon1=(lon-lon0)*np.cos(lat0*np.pi/180)\n", " lat1=lat-lat0\n", " # now rotate:\n", " lon2=lon1*np.cos(phi*np.pi/180)-lat1*np.sin(phi*np.pi/180)\n", " lat2=lon1*np.sin(phi*np.pi/180)+lat1*np.cos(phi*np.pi/180)\n", " return lon2,lat2" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "cm1=cmocean.cm.thermal\n", "#plt.get_cmap('PuBuGn')\n", "#cm1=cmo.cm.matter\n", "theta=-30\n", "lon0=-123.9\n", "lat0=49.3\n", "with nc.Dataset('/data/eolson/results/MEOPAR/NEMO-forcing-new/grid/bathymetry_201702.nc') as bathy:\n", " bathylon=np.copy(bathy.variables['nav_lon'][:,:])\n", " bathylat=np.copy(bathy.variables['nav_lat'][:,:])\n", " bathyZ=np.copy(bathy.variables['Bathymetry'][:,:])\n", "blon,blat=rotmap(bathylon,bathylat,lon0,lat0,theta)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### Apply cluster information" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cluster version is: BIO\n" ] } ], "source": [ "cver = \"BIO\"\n", "clusterD='/data/tjarniko/MEOPAR/analysis_tereza/notebooks/CLUSTER_PAPER/CLEAN/KEY_PAPERFIGURES/pkls/'\n", "cfile = {2013:\"BIO_clno_5_2013_reass.pkl\",2014:\"BIO_clno_5_2014_reass.pkl\", \n", " 2015: \"BIO_clno_5_2015_reass.pkl\", 2016: \"BIO_clno_5_2016_reass.pkl\"}\n", "cxf='Xcoords_for571_stations.pkl'\n", "cyf='Ycoords_for571_stations.pkl'\n", "print('Cluster version is:', cver)\n", "# papermill reads dictionary keys as strings, so add code to correct this\n", "cfile2=dict()\n", "for key,val in cfile.items():\n", " cfile2[int(key)]=val\n", "cfile=cfile2\n", "cx=pickle.load(open(clusterD+cxf, 'rb'))\n", "cy=pickle.load(open(clusterD+cyf, 'rb'))\n", "cf=dict()\n", "for iyear in cfile.keys():\n", " cf[iyear]=pickle.load(open(clusterD+cfile[iyear],'rb'))\n", "\n", "def round2(num):\n", " return int(np.trunc((num+2)/10)*10+2)\n", "\n", "data['Cluster']=np.zeros(len(data))\n", "for ir, row in data.iterrows():\n", " ii=(cx==round2(row['i']))&(cy==round2(row['j']))\n", " if sum(ii)==1:\n", " cluster=cf[row['Year']][ii]\n", " data.at[ir,'Cluster']=int(cluster)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1. 2. 3. 4. 5.]\n", "[1. 2. 3. 4. 5.]\n", "[1. 2. 3. 4. 5.]\n", "[1. 2. 3. 4. 5.]\n" ] } ], "source": [ "for el in cf.keys():\n", " print(np.unique(cf[el]))" ] }, { "cell_type": "raw", "metadata": {}, "source": [ "groups=pd.read_csv('/data/eolson/results/MEOPAR/clusterGroups/cluster_consolidated.csv')\n", "cset0=set([(ii,jj) for ii,jj in groups.loc[:,['I','j']].values])\n", "pdlist=list()\n", "cset1=set()\n", "for i,row in groups.iterrows():\n", " for ii in range(-5,5):\n", " for jj in range(-5,5):\n", " if not (row['I']+ii,row['j']+jj) in cset0|cset1:\n", " pdlist.append((row['I']+ii,row['j']+jj,row['Cluster_ID']))\n", " cset1.add((row['I']+ii,row['j']+jj))\n", "newpd=pd.DataFrame(columns=['I', 'j', 'Cluster_ID'],data=pdlist)\n", "data2=pd.merge(data,pd.concat((newpd,groups)),how='inner',left_on=['i','j'],right_on=['I','j'])" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0., 1., 2., 3., 4., 5.])" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.unique(data['Cluster'])" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 360x144 with 5 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWoAAACcCAYAAABWZOFTAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAj9klEQVR4nO2de5xdVZXnv6tS4SEgRREcIBBiBQFHoaGSCDjQDE0VAXy1TB46o9OjNFX46JFniuioM6MSCkcB21Er8cWnR0eooI3StpCo+EDBhCCCEWxTpCFIAiQpSAh53KrVf+x9qs69dZ9V99xzzj3r+/mcz733PPbZZ+97fmeftddeW1QVwzAMI7m0xJ0BwzAMozwm1IZhGAnHhNowDCPhmFAbhmEkHBNqwzCMhGNCbRiGkXBa486AYRjGZBGRLqAX2A5sVNWbRGQhgKquivC8kZ8j73zmR20kARHpBJb5n9uB1RDNjSAiHUAfMKyqfaH1bcBK/3O5qq6v97mN+uHrsV9VF/nfS4GhYHu9/zv+/7Es/J9pFCbURuz4G2BQVbtD6yq2WKZy4wRiraq9oXVLgTWqul5EBgMBMJJJIMzBfyT4HwEDwBLcA38Y2AjM9d8HcA9pgH6g0+87BHSERH/Ab+8D2oHLcQ2JLmB5KBvr/X74tNt8egCrVXVFPa7VTB9GEliMu8EmEBZsEVnt9wtuOoAuv896StyANQj5fCC4sdpquwQjAbSHvq9W1RX+PwPu/7Ic998Y9us6/eeQqvaJyMLg/wYMqOoQ0OvNK4txQhz8F4P9+oHLVXXYn2sAWOtNMIOM/5+mhAm1kTbmMH7TtcPYjTNAiRuw0Rk0GsYqnDAGb129THzgByLc6bcNMS7CQUNgLeT9j1DVXv/W1Yt7aG+sIj/BgyIwv7RN4pqKYkJtJIE7cDdRxdZHwU3XW7C56A1YA2uBDlzrfLjGY40Go6pDIjLgW67gRHmFr/tuEZkLbPQmkjk4Ae0HBkRkPb4fpIBhYJv/3on7P2wPna9TRHqCdbi3uEERgXyTSF0xG3VM+D/TGlUdjjsvSSDUmRjcAMFNtB7XaloNdPvPOTDW6gnMIWv8fsEN2Ob3mWDj9rbMfmAe7uZaj7M93oF1JhoJxIS6BCLSpaprIkq7DScU/f4p3QFsN9E2DKMYTT3gRUTaRGS1fz3qr3zE2HF5bj5l9usKdSpUjRfkh0K/g1cyY4r4OukKXlH9Q7Fwnw7fcdTmP3uKpDFY6//GiBdf5wN1TG/hZO7vKGh2G/ViXKu11pbxfFW9qR4Z8D3GY5TJy0Mi0mmv25PHv5l0hupuvbdfFrrZ9XmzSZfvQOoQkQ7/dtPmt3djZI6wy2ejBrNUQ7ML9TpgpYjcDqwoNC2ISH+hV4C/2deGvgd+lGtLiXeoc2F94f5lhHmO/ww60NbhbKYm1JNnIXBkQauqLbyDvxGH/c91Rfy1S7oKGukjGBTjfw4w3qG4nXEvkAm+0gUt6bK+0v5zLgUDqOpJUwu1b53O9YX+Y1xhAmMV2Ba0pEKHdRDy0cVVTBfjLkCFLMHZl3u9YFfaP8hbYYUOMdGLwaiNYdzNsgLyBkCEmYd3tfIP7sS0moxIKPRzXo97Ywrf81P1lR5i3GU0EpreRg1jraV1XpwDOnFPw46Cw7Yz3grbjhPP4YKKDTMEtPtzVbN/KdqpzlfTKM0dhB7GnlrfUO5goqnEaA7amfiG1eH7IRYVbiuTBoR8pX2j63YifBNr6hY17hVmCa4C1od8bLsYL/D2gmOGGDdLgBPydhEZKmHGWI0zW/QzLvzl9i9FB1V0YBql8S2eAd8SGgLmFXlzWYdz8yuXRn+opdQWHmZuJJ6ukOkrGAIe9nNej/OjHmLcbDElX+kCP+1IyJx7XjDaKDRwor+w4yiI8+Bv1rFXnkodTLXuX3BsP853d7j2qzJqQUQGTHyNNJE5oa4GL+DzcE/IQGy3VfIE8S31qvcvPF+9ArgY5Ql5h5h92kgFJtSGYRgJp6k7Ew3DMJoBE2rDMIyEY0JtGIaRcFLlnjdjxgydPXt23NlIBFu2bOHQQw/liSeeeEFVj4o7P9Vg9TfOnj17eOGFF9i6dWtq6i9tiMjrgGm48Kf7Kux7ELBXE9pplyqhnj17NuvWrYs7G7Giqtx4442cc845nHvuuYjIv8adp2qx+nNs2LCB2267jRtuuIHW1tbU1F8KaceFFXiviJwDPAmMhsVYRD4CXIHTwgWU8IUWkTnAdcDDqlq3wE/VkiqhzjqFIm2kj7BIT5s2Le7sNDWq+qCInAX8HPg+8DzwM+ATACJyGS4ExAJgS7FWt4i8HlgKqF92Nyb3+ZiNOiWYSKcfE+lYGACOAl4E7gTeAyAiFwGXAV9Q1afKmEZmA6cBxwDXquo/RJ7jIphQpwAT6fRjIh0PqroH+AguaNLNwD4RuRG4FfgWcLuIfEREZpVIYgQ3NdeXVHVHA7JcFBPqhGMinX5MpONFVX+Ha0n/BDjSf88B/xG4BrgFeKHwOBE5BPgb4DjgD43JbXHMRp1gTKTTT1JFesH5h+i27SN56x763d57VPWimLIUKaq6TUTeiRPpblyUxXOANwI7gJcBER95CSfQZ+ICNi1R1T81PtfjmFAnFBPp9JNUkQZ4fnuOX/zo6Lx1hx771IyYstMQVHUX8BUR2QUcjDNrnAAcATwuIifgWtdbgQNxFocHVPXReHI8jpk+EoiJdPpJskgDjKLs1lzekiG+hWspHwCcChwP7AO+AJyE8+74BXCFql4VVybDWIs6YZhIp5+kizTAiCo7R0fjzkZctOB8qjuBLThfawEOAjYBr1HVr8eWuyKYUCcIE+n0kwaRBhhF2Dma2dv/jcDhuM7F1wBXAr8HLsEJ9/+OLWclyGxNxU13yyJy3fNoXb2O1uNmsrNzJo+/ch+HHN3BsmUm0mkkLSINMILwsk6POxtxsRQ4TVXfLCJfxelgO87k8Xvc/KqIyLHATcB3VPXuuDILJtSx0PmBmzky9Htn50z+Zft9TO+cTcuJs+PKljEF0iTSAKPaws7Rg+LORsMRkRbgPwPXiMibcbbqv8SZPO4GXgE+JyKbgIuAVwHvEJFDgftwLn2nNbqD0YQ6Bg7ZMoKceRot+0aZNvNYHn/lPg684BgOmXYif/xwIvoujBpIm0iDM328PHpg3NloOKo6KiKfxw0d78V1Hj4AvBoXwOmDwGacvfpJnA91B86e/RrgM3F4gTRcqP00SMGEowO4ICgr/e/lqlrrrNGp5enzD2T3CY/Q2v7vmf3YHCD5nTtWf/mkUaQBRmhh5+jBcWcjLh4H/gPwHeAx3Mzzt+MmqH0EJ9IAfwKmqepGYGMM+Rwjlha1qvb6eQKX4IZnLlfV9X5y2EVx5KmRtO4eIXfgNF558vuMzjqJVx1xIvd//uq4s1U1Wa+/gLSKNMCItrBzJHumD88s3GCWdzI+E/kO4FDgh7jBLv8fuNivG258FvNpuB+1n459Ia4VNgDMZzy0YFuj89NIulsWMf99n2fL3Ok8etxPyB3+Bk67699x0jdjCyFQM1muvzBpFmlwpo/dowfmLRniYJzXxxbgi37dAqAfOBHXgH01cKmqDseRwULialGv8iM1eyvtKyI9QA/ArFml4qYkn4v+4uMAjEyD5x7+MQeeeAqv23gC8BI/euRT8WauRrJYf2HSLtLgOxOz26I+VFVfAhCRXwD/iBvg8g3gNuAdwD8laRKBhreovY0TVV0FdAFrccZ6KPKKoaorVHWeqs476qj0TYTR3bKIi2ddycijjzNt5rHsuH81M1o7eO2W19K6K4fs2Bl3Fmsia/VXSDOINLgW9SujB+QtGeIl78UB8CywHtgDfBu4XFXvTpJIQx1a1CJyB87/ENyYeQBV1QUlDukQkT7czd0HrANW+hba8qnmJwl0t0w006oqG2UDB886mVlPtSE7ngbgn5+6pcG5y8fqr3qaRaQBRlTYlcuUOIf5DTAPuE9Vt4vIq3G26BdVdX81CYjIUar6fJSZDDNloVbVxQAislxVlwXfy+y/BlhTsLrpOqBWjw6OCfb+pzeziSc4cu8ptP+hlZGZB6CPPhNzDh1Wf9XRTCINoCq8MpJZof5n4FqcXzSqeh2AiPxfEZmmqiNljg14SkTmqOqfo8vmOPU0fXSLyGEi8lpcGMGmp7tl0dgS/A5vA5g281guuGEubRxJ+4EzyW1+Bn3wd4AT8wSRufqrlmYTaXA26t25A/KWrKCqLwOHhdeJyKk480e1//0v4QS/IdSzM/Fy4LO41+jL65huYikU2uB30Jq+d+QObrzxRu786D0cIeP22dbjZsZu8ihC5uqvGppRpMENId+dy+YQchE5HNgvIoer6ot+9SG4eRXfBvyoimQ+C1wtIrNVdVM0OR2nnkK9A7hXVb8rIn9Vx3RTSRBg6c6P3kP7WRcAkPMt6QSKNFj9TaBZRRpAFfaMZHZg8nrgj3i7tB9W/mvgQspMXuvfNm8FnsN1Qm4GzsMNP4+Uepo+rsf51ELGX51VlQtumDvWktYHf5dUc0cYq78QzSzSAKMq7MlNz1syxPdU9WJVDTqKTgBWAGcBR4nIhCeYN418DSfur/PL14GfNiLDdXfPE5HZuGluMkGhfTrckg6bOyDRIj1G1uqvGM0u0uA6E/flpuUtUSMil4a+/23kJyxNu4gMBD9U9UlcSzqHG1L+bRF5l4gcBCAi3bgW9+uBh4FuVX2Xqn5SVZ9qRIbr+e7Tj3PX6sMPcMgaXbIwryUN4+JczGUvYWS+/iAbIg2gCHtz9bv9vX99B9CpqjcV2X4jcIGIzMcF6e8Evlq3DNTGebgBLmG+CrwdmImbtfwZYJWIvISzW/8BuAc35+INuNAJDaMeftSXhn4G4+Y7aYDdJgkEQhyYO8455xyWOS+3NIhz5usvTFZEGpyNen99W9GdfsRqp4h0qOpQwfbA5XPAnT/6DrgyvAT8pYg8jmsdPw1swHWiP4oLyvSPjLudbsbNo/gxoEdVGyrSUB/Th4SWRI3maRRhm3QwM0uhSCfY7JH5+oNsiTQ400cuNy1vKYeItIlIl4gsDf1eKiILRaTTj1QFmFNEpPHeFRtxgfhXiMg9db6kWngM2InrQP+v4EZ44cJX7sDZrE/ABWXahpvo9i3AX6nqymIJRs2UhVpV71TVO3E9qfjvw1NNNy2Ep89ap/cB4yKdBrNH1usPsifS4FrUI/tb8pby++swLvhWMOdFD7DCC/QSAB+sq69oAo4uVV2sqheWGfkaOar6XuCnqnq2qn4GxvpmbsO9Tc7FTSbwWeCDqhpM1/WrWDJMfTsT+8iY10C5OQ7DLegEt6bDZK7+IJsiDYAKo7mWvKVG5ociy3V4ke7FhRNoK3GMiMi1InJpgcktDnaJSHiipY/hpuiaB5zkB8W8Ee+up6q3qurexmfT0XCvDxHpEJFBEVnt7Vlt/vegj3GcCqoV6bSRlfqDDIs0gILmWvKWWgkJcpuqrlLVblVdVCY06O2Mh8SNmy8BnxaRQ/zvHwCn4nypL/HrPoOLTx079RTqflxQn0peA12qughnqF/m913u1y2rY34io5RIJ9nEUQWZqT/IuEgDKEhO8hZghoisCy3l/gdrcRPCQvWmsl7gCr9UDJEbJT5Gx63A34vIsar6feCtuA71C0XkTOC9OL/p2Ikqet4ALhD3BFR1RejndtzrdrCubar5iZpma0lnrf7ARBoAFZhol35BVeeVOaoL6PSueCuAHhEZpsqoiap6YfBdRK6tLcP1R1UfF5GrcGLd432iFwCIyJtwM8F8GOeOFyv16ExcrKpLgCHfSXAhvmOqAoHfbllEpCd4wj//fMOiChalnEinlSzVH5hIh2nJSd5SCR9bvFtVh1R1WFVv8uuqmiczsE2LyH8iIf0g3hvl/wHX+aHkwfrf4GaBOVFE3lvqeHFcJiLLReS4qPIZS/Q8EekH+rwtKxWB55tRpAto6voDE+k8FCSXvzSA4GmgOPNHIlDVe3FeHX9TsP4lVX0/8H4fyAkROVxEPiAiH/SjKz8E/B3wbtwUX5HQ8Oh5/ibvwvUUD+FemxIdeD4DIg1NXH9gIl2IKLTsr9yKrjPDuLewI3D/lScbnYEyrAQuE5HbVHW0YNt7gE/jBPl9uJgg04EzgLuBH6jqx6PMXN2EWlUfpoqnpKoWe11ObC9cRkS6aesPTKSLog1rRYfpCezUfsDLdxuegxKo6vUicj7wCeB/Fmx7RkR+LCK3AMcDgWvhTbgBMv0AIjIrqtgfdTN9iMgFInKviKxNgI9kXciKSENz1F8xrxsT6RIotOTylwYg3rz2asbNIEnil4yLcCHfB+7EzVL+PeCfcK3qW1RVRWQ6bvh5JNTTRt3jO6PmE7PrTT3Ikkh7mqL+wmJ9tiwwkS6BxCPUfbhQoStJZuCvA4BnROQlETk+vMGbQ9bhPJvOAP4MbFXVPX6XabgYIZFQT6EOnpaHk8ynZdVkUKShCepv9ejgmIvkhg0beJZN3HDDDVw0/V0x5yyBKMj+/CUqROTL4MKJhryMKnoMTeI8Z/jO8MnyCm6Y+DCu3yVPeFX1FeB8nKnvdFXtD21uwcUKiYR6DyH/Gt6/so7pNpSMijSkuP7CMcG7WxaNmTtO5FQT6VIotOzPXyKkvfIudWETcN1kD/at5n/ABW06gyItZB9wqhUn5ItDm6YB1UyKOynqMeAl3NMfDA/tJUWj1AKyKNLNUn8Xz7oSgF36Epe84Z2cyKmISCoHITUCAVoik5WipyvkyCLrpoSq7hCRF0TkoJBJomr82+R1wG+Bi4sNhRfn3vRl4GXcTOYByRZqnKtNO/Ad3ECJVL42Z1GkPamtv6Al3XrcTMCJ9LNsMpGuBo28FR1muYjcC9yB+39VirI3FdbhRhfeNYljLwEuw3lzICIHqOq+gn1eg2tpv09VfxtaH6lQ12Nk4hWquhhXAdfjXptTFdc4wyKdyvoLTByBQOsRh7Fr/za2HraNjbkNeJ/utMdeiZRGdiZ6189FjDcCFheIXD1ZA7wlPMqwBn4MrMLF/Pgy4yEVwvTiIup9TUQ+G1qfDhu1j2Pch4v/kJqmTJZFOkxa66/1uJm8+Lvf8PSW39CxczZvfe01QDrjrjQUhZb9mrdEejrVF1V1pV9ejPA8u3FeJZ+U4Ild/bHPAf+KM31cCpxZZLcLgeeBp4FrRURFRHGR9iJ7G62LUPvx+1/GtcgGvYtX4jGRdqS1/nKbn2HH0fAsmzj51IWICLnNz4yJtIl1GeJxz2sIqroW+Blwh4h8rcbDjwV2AY8AdxUR+yNxEfX+HvgfOEGf6Y95x1TyXY4pC7WIjOJeB17EPVGuKOigSiQm0o601V/Y5LH9/Nk89/gvOeW4Bew62TkWmDhXhyhM26d5S9rxg04AUNWfAD+n9rk/W3Gxa9qBZ3FDxsP8EHgcWIyLrne/qv5ZVa9W1V9OMutVZWqqzKn1AB9gvktVb/LBxwN/xIFqI3FNBRPpPNJXf0ccxovHH8+Wzet41dJ3M/KJB7h/8AtRn7a58KaPJuMqEVntbeIAXwQ+IyLzVHVdpYN9A+U9wH0497x7cFH1vhmK//HfcB5RK3Ezmb+qvpdQnCkLtarWFFjFx7JdElrVA/Sr6pCIDBDxqDgT6XzSVn+tx81k13Ob2DT9GTp3n8rOR2DfW94U5SmbElGlJdd0Qv11YEBElqhqzg/t7gc+jvMGqYQC9+MCLe3AjVQ8BXg98Hu/z9G4uXBVRL4JvInaW+01U/epuCrhHcYHQqvm6/isxR1FDqnnuU2kp0ic9dfdsojnXjedR095hlOOXsC2rtncP3gNP/vBpMc4ZBeFln2jeUvaUdUXgM/hWr3BuheBNX6CgEoMA1uBS+D8Nti3AOY+BFwpgoiwHzSnqjkROQJ4P3BRva+jGA0X6mJI6ckw6xZ43kQ6OhpRf2e/+3P8y4c6eP6o+zjmzLcg0sLab1zNeW/7LOe+8/9MOt2sIg32+mgUqvor4IyCSQB+BIyKyCWljwTgbJzwngD3nAutrfDrubDvb2H/PpwFIvCrPhT4C+Ca+l/FRJIg1JEHnjeRjpTI66+7ZRHbzvkTOzY9wMmb3sqMJ5TRVtcZ/7MfXMcvvhf7rE7pQ5WW/SN5SxOxEvh8wbovAG8VkQl/Qj9LyxW4/pofAl+EPe2QyzltDizE+3PwwjH+x4nAR1V1RzSXkE/Dhdq3vvqALhHpwsWWWObtm3X3NjCRri+Nrr8Lzl/OE1d1sG3No8y/+yj2HHMIBwzv56C7HqS7ZREXnv2pep8yGyi07B/NW5oFP5jm9yKyNLROgf8FfLGIWL8JN8BlFfAEcA18xcdmz4UcFw+4CI56wP94BGjYlEX1nOGlKvz4+cIOp0iGkJlI159G1h/An04bZvev19I52s2003LIXQ8yel7n2PZ7fx3pxBpNi6gi+5rIeboAVV3pzW5nqeoDft1W33K+S0S+C6zwA2R+i5tGaz+u5f1+uPKHzvSRy7nl7Wtwox4/7Bsrb6SBI3gbLtSNwkQ6/WzYsIFda9fyhvYFrL47qtAQGWW0uYXa8w3gNiBoBQeBmy7E+Uh/3ften4Wb4HY20An6YafZuRy89064fQnjWvkG3IjFVcBmETkAuN632CMjCTbqumMinX6CUKWvXnQJPzeRrj8Ksm8kb5kKItIhIl0isrBOOZwyqrofeMgLc3j9Hlwn4J9wPtPLGBf1+cA+15puAW4/zB92sv+cj+tIPBT4GDCDiL2doAlb1CbS6Sc8fVa/zcwSDToK+woDw02JhX4A1EIR6Qi5bMaKqn5ORK4XkdNx02bt8+u/LiKbgf2q+lMAL+i3wMivQzGWzsD5Vs/0nw8DH8R1oj8DHKOqG6O+jqYSahPp9GNzHDYIxTkxVIm3y84DOkMjUntwMcyHGI8vPYxrYSZCqAFU9UYReTPwFRF5EFipqqOqem/BfvcCiHAAsA++uBT4a9zML7NxIxU/DDyEC4e6gIneJZHQNKYPE+n0YyLdQHQU9u7LX8rt7jqRw4Lcg+uMW0X+SNU2EiTSAar6K1V9P7AF+ICIHFh6X1SV6apX3Qw8hRPkbwAP4uKHnI7zIBmhQZ4fTSHUJtLpx0S6wYwqundv3lIj80MzoHTghm53Ae1JMXuU4PvAHuCrfjb0SlwBXI1zSf1rnHfIY7ggZjlcp2LkpN70YSKdfkykY0AVnaKNWkTavFi3eXFOskADY/7UX/MmkJtE5PpiU26F9n8ZuFlEDsZ1KAYzIj2sqrc2Is+QcqE2kU4/JtLx8JJuv+fevd+eUbD6IBEJBy9aoaorSiSxFidYwxQZkZp0VPUxH7DpUyKyFWfG+JaqPlW4r4icBvx34A84v70eoOZXkKmQWqE2kU4/JtLxoaqTCSbUBXT6CIorgB4RGSaCEamNwEeO/DsROR435+G1OEEeQ0Q+hGtJ7wUeBY4BTlfV+xqZ11QKtYl0+jGRTh++dR1uYd8UV17qiao+DSAis0XkJFX9o//dgotpvRu4GTcN16dxkwbc18g8xi7U3s1npf+5vFLgeRPpZFFr/YGJtJE8vBfI24CjReQEXHCmV+FiXM/CDTM/HTgPeL2ISNSjEcPELtQ4e89yVV0vIoNUiBthIp04aqo/E2kjiajqXhE5E5gLXIXrNGwFPomzTW8FpgNvB3obKdKQDPe8+Yz3FreV23HLli0m0smj6vrbs2ePibSRWFT1N8BrcFNsvQN4C+x7FF77JPBfcAGbNuM6UhuKNPjBMDEDrhV2uaoO+/nOugu29+BabeAiVj02xVPOAF5okjQATlDVhoVbLCSG+oPklH890oi1/ozSuBldaAVyqkyvtH+UJMH0EQSeX0+JwPP4DgwRWaeq86ZysmZKIyE0tP7qlU5S0jCSS9ziHCYJQr0CWCkikFI3n4xj9WcYERO7UPtRQZEFnjeixerPMKInCZ2JtVBqlFRW00gb9brmpJR/FuvQiIHYOxMNwzCM8qStRW0YhpE5UiHUItImIoN+6ax8xITjO4MZiX1aA36pKi0/zdCgiKz2adWcH5/G2Hmnek1pIu7688dZHRrpRX2U7CQvwFLczBIAgzUe2wH0A/2htDr894Eq0+jxn23A4GTyEzpnp8/PpK8pbUvc9Wd1aEval1S0qKlh9Fsh6uLkDoTT0vHA5lVNSqn5oR63TyY/qjrkJ/5c6fMz6WtKIbHWn0/H6tBILWkR6rriAwlNhn7cTA+TQt20RcuB3smmYUyp/sDq0EghaRHqYPQbTD1I+aTS8kHG+9T5Ddecho/hG9zoXZPNR0qJvf7A6tBIL7EPeKmSSY9+862vPmCen9MtSGt7tWn5G7wL6BCRIX9crfnpEJE+3I3dB6ybRBppJdb68+lYHRqpxfyoDcMwEk5aTB+GYRiZxYTaMAwj4ZhQG4ZhJBwTasMwjISTWaEWkS4/9HcgNDx5oR/QEOV5B6NMPytY/RlZIpNC7f1he1V1kar2+nWR3uBG/bD6M7JGWvyo681C4PbQ7xW4+A8DwBIR6cYNYNiIm5V42G8LRrT14+I9LMENIe5Q1UUAIjJA/ui3ftzw4pXAmoiuJ2tY/RmZIqtCXUh76PtqVV0hIqv972HcYIZ+xkefBZHShlS1r+CVOxCE8L7dwAXqJ4CN5hIyjdWf0dRkVahX4W7IVf53L65FFia4iTv9tiFctLYhGHvVXgtuSLFviaGqvX6kWnjfbpyYDEd5URnC6s/IFJkUah8FbSDUMTTkW2ELgW4RmQts9J1Uc3A3eT8wICLrgWKtqmFgm/9euO8AMCgi9upcB6z+jKxhQ8iNSPBxOXpxIUU3qupNgXnBBzWK6ryTOoeI9ODs2V04YR/CtcTbJpOeYdQTE2qj7nivjP5QB91SxuM21130fOCmZao66fClobT6cXZuaz0biSGTpg8jchrlldEOXA4sA7oKXPTW+/3wabf59MB3OFZzIQVpBsdv958dqtrtH0zhvHcF11WPh4dhZNKP2mg4hV4ZvTghnsO4V0bgaTFMgVcGcHvIM2NAVYd8GgPAYv+5pqCl3g9c7gU+EMu1/nf3JK8jOH6eP/+wX1+Y9/B1GcaUsRa1EQVRe2V0+DTbcK3ySgQPiqlOmxUcH7Sow7PNjOUdWBW6rsk+FAxjDBNqo+40wCujExe8f3vofJ2+QzAQ0T6cpwZE37ItzHvQqh4qe5RhVIl1JhqGYSQcs1EbhmEkHBNqwzCMhGNCbRiGkXBMqA3DMBKOCbVhGEbCMaE2DMNIOE3hRy1CDvfQGVWt/ZrCx/tVdUlrMsdPhmLnrLCOWvJXUD41X1s15VvtNdSDSucK55GC8ipVFuXKtlL5FeanUnkVnGvC+epNLfdHuWspd20UKe9K5yo4H8X2q2F7w+7XyZB6P2pf0NNCq0YmISLTSmyealo1HT8Zip3Tf1ZaB1Xkr0z5VHVt1ZRvtddQj7Ks8lylGCmxX7H1pa6t0vZS56iU10j+a7XcH1VcS7lrq8SE6yuRt5GCB1ot2yO/XydLLEItIul+OhiGkXlUVRp1rrieHr3VRi+rRBZa1CLSU6q8rEVd7JxTLq9SNG2LulSZWYu6OD5cQcOIq0W9TlXnNfzEKcXKqzasvGrHyqw2Gl1e5vVhGIaRcEyoDcMwEk5cQl0X+3SGsPKqDSuv2rEyq42Gllfq3fMMwzCanbItahFpE5FBv3SKSIcPCN9f5pilfgbqqvHpDorIan+esucN/R7wM2kkgqSWV+i4ntCMJIkgqWUmIl1+20Ct54qSpJaXP6bfL1Zelf9fPaHthbMfTURVSy7AUqDTfx/0nx24aYfKHdNVLt0ix/T4zzbc9EVlz4ubVBTcTBr9tZwryiWp5RUqq4eCskvKktQyw03QuzDu8klReXUBS+Mun7SUV+i4ruDYckslG/V8JjnPXOgJMuifLgtDT5A8H0TN99/cXum86qZeWgisxM3NlxQSWV6eZeTPDJ4UklxmvUGLqJZ8RUxSy2sRMN+ntbDI9rhIankFVDWmJLLORJ04UzRUngW6n/EZoyulvwo3F17vVPOaBKIsL3/jJFGkp0TE/7E1OPHp88eknqjvSWC5T2vJ1HKaDKIuL29eWVvNvpWEei2uuQ5uctFqONJnosPbYxYx/kQp+YTx+/ap6nCl84qbhToQ68TYw0hoeeH+VN24GyhpopPUMmv3+20vsi1Oklpe4dngJ6QVI0ktL3D35JpqMlRpuOQKYKX4mZzFdUT1AfNEZKEXyiCTC/2JO3At3S5CM0WXw19gF9AhIkP++JLnBYZFpM+nX+3TvhEksrx8qyA4LkmmIkhomTH+H2snWW9tSS2vcL6S1BhIZHn583ZQ5Uz15p5nGIaRcGxkomEYRsIxoTYMw0g4JtSGYRgJx4TaMAwj4ZhQG4ZhJBwTasMwjIRjQm0YhpFwTKgNwzASzr8BtcKFlXoCFUsAAAAASUVORK5CYII=\n", "text/plain": [ "<Figure size 360x144 with 5 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 360x144 with 5 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 360x144 with 5 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWoAAACcCAYAAABWZOFTAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAk5klEQVR4nO2df5gcVZnvP+9kEsKPwGQSEEwIcRLd4ELEIRH06mVZZ/ilrr9myHXBqysyg791xQy5e3fdffwRJqwCrtd1EkW5irswUR/d+4gwYWVdF4wZggsY4moGhMQkEiZDAiGZ9Mx7/zinpqs7PT3dPd1dVd3v53nq6e7qqlOn63R96633vOc9oqoYhmEY8aUh6goYhmEY+TGhNgzDiDkm1IZhGDHHhNowDCPmmFAbhmHEHBNqwzCMmNMYdQUMwzBKRUTagG5gGNihqutEpANAVTdW8LgVP0bG8SyO2ogDItIKrPEfh4EBqPjF1gXcpaoj/nMTsMF/vVZVt1bq2Mb0EZEWoFdVO/3n1cBQ8H25/zv+/7FGVXvKWW4hmEVtRI6/AHpVtT20rqPA/Uq6cPyNoRvYBIz41V14gRaRfqCz2HKNqtIB3Bn6vB7oB/qAVSLSjmvbHcD5/n0fEPxfeoFWYBVO4FtCot/nv+8BmoFrcYZEW9Z/c6vfDl92ky8PYEBV15fjh5pQG3HgStwFdgzhR0wRGfDbBRcdpC+crUxyAU4i5GvIvMgBVuIudnAXnJEsmkPvB1R1vf/PgPu/rMX9N0b8ulb/OqSqPSLSERLhPlUdArq9e+VKnBAH/8Vgu17gWlUd8cfqA7Z4F0w/6f/TtDChNpLGEtIXXTNMXDh9THIBZhfgL7I7gZZKV9aoKBtxwhi4OLo59oYfiHCr/26ItAgH/4UtkPE/QlW7vWulG3fT3lFAfYIbReB+aSrhN+XEhNqIA3fhLqIprY+si6476+ucF2AOAhfLCpwVHbg4tuDEeytp0TdiiqoOiUift1zBifJ63/btInI+sMP7rpfgBLQX6BORrfh+kCxGgGf9+1bc/2E4dLxW37cx7LfpAfpFBJzxUBGsMzEi/J9pU9CRVe+EOhODCyC4iLbirKYBnMAO4C66wOoJ3CGb/HbBBdjkt5m0Q0lEev0+AG24G4Z1Jhqxw4R6EkSkTVU3VajsJtydvdffpVuAYRNtwzByUdMDXkSkSUQG/ONR79R7TOyXEeaTZ7vsHuCC8IL8UOhz8EhmTBPfJm3BI6q/KWZv0+I7jpr8a1eOMvqL/d8Y0eLbvG/qLQsur6OU67sS1LqP+kqc1VqsZbxSVdeVowK+x3iCPHV5SERa7XG7dPyTSWuo7SYLs+vxbpM234HUIiIt/ummyX/fjlF3hEM+qzWYpRBqXagHgQ0iciewPtu1ICK92VEB/mLfEnofxFFumUy8Q50LW7O3zyPMS/xr0IE2iOvcMqEunQ5gXpZV1RTewF+II/7jYI4RZpOGChrJIxgU4z/2ke5QHCYdBTKtWGn/ej4wUqnBMDUt1N46Pd+f9PtwJxOYaMCmwJIK7dZCKEYX1zBtpEOAslmF8y93e8GeavugbtkNOsSxUQxGcYzgLpb1MCHK2aK7Ah9q5W/csbGajIqQHee8FffEFL7mpxsrPUQ6ZLQi1LyPGiaspUEvzgGtuLthdiztMGkrbBgnniNZDRtmCGj2xypk+8loprBYTWNy7iJ0M/YU+4RyFzYisVZp5tgnrBbfD9GZ/V2eMiAUK+2Nrjup4JNYTVvUuEeYVbgG2BqKsW0jfcKbs/YZIu2WACfkzSIyNIkbYwDntuglLfz5tp+MFgrowDQmx1s8fd4SGgJW5HhyGSQdRz1ZGb0hS6lJVe1JJzm0hVxfwRDwcJzzVlwc9RBpt8W0YqWz4rQrQt2F5wWjjUIDJzJyTPht+lW101+sE488U3UwFbt91r69uNjdkeJ/lVEMItJn4mskiboT6kLwAr4Cd4cMxPbZqSJBvKVe8PbZxytXAhcjP6HoEPNPG4nAhNowDCPm1HRnomEYRi1gQm0YhhFzTKgNwzBiTqLC8+bPn6+LFy+OuhqxYM+ePZx00kn8+te/3qeqp0Zdn0Kw9ktz+PBh9u3bx969exPTfklDRF4OzMClPx2dYtvZwBGNaaddooR68eLFDA4ORl2NSFFVbrzxRl7/+tfzhje8ARH5XdR1KhRrP8e2bdu4/fbb+fznP09jY2Ni2i+BNOPSCrxbRF4PPAGMh8VYRD4GXIfTwkuZJBZaRJYAnwIeVtWyJX4qlEQJdb2TLdJG8giL9IwZM6KuTk2jqptF5ELgp8APgWeAfwP+BkBErsGlgLgU2JPL6haRs4HVgPrlUHVqn4n5qBOCiXTyMZGOhD7gVOA54LvA1QAichlwDfAlVX0qj2tkMbAcOAO4XlW/VfEa58CEOgGYSCcfE+loUNXDwMdwSZNuBkZF5EbgVuAO4E4R+ZiILJqkiDHc1FxfUdX9VahyTkyoY46JdPIxkY4WVX0EZ0n/KzDPv08BfwJ8ErgF2Je9n4icCLwHWAg8Xp3a5sZ81DHGRDr5xFWkL734RH12eCxj3UOPHLlHVS+LqEoVRVWfFZG340S6HZdl8fXAOcB+4AVAxGdewgn0BbiETatU9bfVr3UaE+qYYiKdfOIq0gDPDKf49x+fnrHupJc+NT+i6lQFVX0e+KqIPA8cj3NrnAXMBbaLyFnwtlvgrjdD17fhmw3Az1X10ehq7TDXRwwxkU4+cRZpgHGUQ5rKWOqIO3CW8izgXOBMYBT4khPpxkZYfzVwnap+IsJ6TmBCHTNMpJNP3EUaYEyVg+PjGUsd0YCLqT4P2IOLtRZgNrztXkilYOYsVX0xwjpmYK6PGGEinXySINIA4wgHx+v28j8HOAXXuXga8HHgV8AV8KM9MOujcRuhaBZ1TDCRTj5JEWmAMYQXdGbGUkesBpar6rtwlvXv4MJmGFV4469w86siIi8VkW+LyJujrCyYRR0LTKSTT5JEGmBcGzg4PjvqalQdEWkA/hz4pIi8Duer/u/w0xQ0Ctx9Ecz6gog8CVwGnAC8VUROAu7HhfQtr3YHowl1xJhIJ5+kiTQ418cL48dFXY2qo6rjIvJFOH8VPNiL08CU60AE56qmDZiNs7YX4sS8Fecm+VwUUSBVF2o/DVIw4WgfLgnKBv95raoWO2t0Yrns3z7Kz2/9DcctfRlrEiLS1n6ZJFGkAcZo4OD48VFXIyq2w4MfTYtzqtF1IAK8bC+wwG/3W2CGqu4AdlS/mmkisahVtdvPE7gKNzxzrapu9ZPDdkZRp2rR3tCJXLCcJy8/kasPf4t5f/Yq7njvV6KuVlHUc/uFSapIA4xpAwfH6s/14VnEMdr30a/B/X8CTywFUnDtHbDhKnjhJNzw80ipemein469A2eF9QErSacWbKp2farJGy9ei1ywnJGlJ/DfDt7IV5+/ijvee3/U1SqKem6/MEkWaXCuj0Pjx2Us9cMnjwcJBY43Al96Pzyy1FnZjY1OpBsboemZyKoZIiqLeqMfqdk91bYi0gV0ASxaNFnelHhzyWs/g25+hAPveS1/OH8mi3/zDX48+2286t65UVetJOqt/bJJukiD70ysW4t67cfSbo9wFN6sRhj1At44C2QUNygmcqpuUXsfJ6q6Eee034Jz1kOORwxVXa+qK1R1xamnJmMijPaGzowF4Pc9r2PfcmXGL3/Avscu4rzbT0D2H4y4psVTD+2Xj1oQaXAW9YvjszKW+iIs0KkUbPiYF+kTVGfOVBVVZaYqsYinnrZFLSJ3kf7VgYmoqnrpJLu0iEgP7uLuAQaBDd5CWzvd+sQJuWA5uvkR9i87kbFGZeT++zjrmXOZd9xCYG/U1QOs/YqhVkQaYEyF51P1Js4B/e+Czn+CmY0uyqOxEa691b3KIWDKoHIROVVVq+YWmbZQq+qVACKyVlXXBO/zbL8J2JS1umY6oNobOplx7jLGHt3O0ZNn0XBRK0dOhpGf3McZJ7Ywu6WFhu88SAoYGO+PurrWfgVSSyINoCq8OFavQn3V3Zl/WcFp89EUNMx20yxOyVMiskRVf1+RKmZRTtdHu4jMEZGX4dII1g1hFweA7D9I48IFNA4MMjZTeGbLfcyZ38JZjzcy5zsPAvEQ6Szqtv2motZEGpyP+lBqVsZSL6jqCznWeqO1sdD//leAu8tVp6koZ2fitcBNuMfoa8tYbuwJi+6Mc5eRenQ7AEeuWMmubffR/LKlLNo6A507h0YWcPdTt0RU07zUbfvloxZFGtwQ8kOpuho2PoGInAI3/D185vp0p2LA6L+IMKsA3/RNwF+KyGJVfbJCVZ2gnEK9H7hXVb8nIn9axnITQXtDJ40LFzC2c5db8Zpz2fOzHzB//lKafzMTnTuHsUe3x9GSDqjr9stFrYo0gCocHqvbgclb4cb/gs/6j4qb8GVCtEfJ4af2T5u3An8AdgM7gYuAJytd4XK6Pm7AxdRCnT06tzd0MjDeP2Epqyq/234PJz83k7knLiK1c9eEOyTG1G375aKWRRpgXIXDqZkZSx3xfdArsnzRobjqseztEZFzga8DJwEv98ttwE8qWM8Jyh6eJyKLcdPc1AVh33R7QyeqypP8mrnzlzJXTmXs0e3IBctJ7dwVV5dHBvXWfrmodZEG15k4mpqRsVQaEXlH6P37K37AyWmGo6NMeBSCwS+plFve9X2Ro0dFDs8GEJF24EHgbOBhoF1V/4eqflpVn6pGhcsp1L248K4e/ACHemBgvH/CnRGI9LzTljH3xPTgDt38SJxdHgF12X7Z1INIAyjCkVRjxjIdRKRFRNpEZPUk398IrBGRtf79ldM64PS4yA0RJ8WEJR24PWbdBN95u/s846CIfA34Nm5y268D7wTmVLvC5Yijfkfo44B/baUKfpsoCXzSAHc/dQtt0pEW6dNdeF5AnEW6XtsvF/Ui0uB81EfLa0W3+hGrrSLSoqpDWd8HIZ997viV74DLwwE3RFxDFrWm4FP/B77mky+lUm6kItfgfNF7gb8CulT12WpXuBy9CRJ6r1mfa5ZAfNsbOidEeu4rX8PJjx9AjjuYsU3Mqcv2y6aeRBqc6yNVhFCLSBOwAifI6/znLlyelyE/UhVgSQ6RRlWfE5EdwDqgSUTyDaqqNI/BigYYfKX7OLPRORdu+pD7+88IsuldjrOmjwPeBPypqlbFJ53NtF0fqvpdVf0usDX4TAyyTVWawDcduDuamEfT4wcASAWRHwmgXtsvTL2JNDiLeuxoQ8aSf3sdwYnyPL+qC1jvBXoVgE/W1ZOzAEebql6pqpdEKNKo6rvhkZ+ozpyZDu5QnLtDcSI92oQLwfugqgbTdT0QSYUpr4+6hzqKGhgY789wd5x65nkT68OvCaKu2i+gHkUaABXGUw0ZS5Gs9OINLq1ABy5J1wZvbedCROR6EXlHlsstCp4XkXm4pEuhzsS33AezblM98QXc3IqHAFT1VlU9ElVlqx714Tsd+kVkwPuzmvznfp/jOBGELenNe/szrOgEivQE9dJ+UMciDaCgqYaMpVhCgtykqhtVtV1VO0MCns2dpFPiRs1XgM+CnADMciJ9/uNwzyXAFX6bzwE/iqyGIcoZ8d6Ls8qmihpoU9VO38gbcNnXEpV4PrCkm5jHXDmVyxd9HEi2QFNH7Qd1LtIACpI6pjtivogMhj6vV9X1k5SwBWjGuclGCjxqOC2uAt8rcL+yo6q/F5FbgX8A+d+qOlPk0UW4//THReQC4N04n/qBqOoZUKnseX1ATh9UVsMP4x63g3VN061PpQlb0oN6P5Ae8JL9PgnUS/sFfQoD4/0m0gAqcKxfep+qrsizVxvQ6lPdrge6RGSEArMmquolwXsRub64CpcfVd0uIp8A/kFEunxM9KUAIvIa3EwwHwY+H2E1gfJ0Jl6pqqtwPb+X+MYoZN68wILLi4h0icigiAw+80y0ky0EE9F+46dfySnSQNxHHx5DrbZfOFFWeFDSa+VSE2lPQ0oylqnwucXbVXVIVUdUdZ1fV9A8mYFvWkTeSUz6QVT1OVxkx6f8DOXB+l8ApwBLReTdk+0vjmt8fPjCStUzkux5ItIL9HhfViISz082W3i29ZyE0YeTUJPtFxbp5/UAu3nSRBq86yNzqQLB3UCB66pyxAJQ1XtxUR3vyVp/QFXfB7zPJXJyCZ1E5AMi8kE/uvJDwEeAdwEVmy246tnz/EXehuspHsI9NsU68fxkIh2QNHfHJNRM+4UHIwWdvM/rAX5/5mGWtPxPE2lAFBqOVj1kfgT3FDYX9195otoVyMMG4BoRuV1Vx7O+uxqXwekjwF8AF+Li+l4N/D/gX1T1rytZubIJtao+TAF3SVXN9bgc2w6oqUQakufuyEWttV8g0I0LF/D80WfZvecRXv70ucjOX0ZbsbigVbOiw3QFfmoRuYcIOxOzUdUbRORi4G+Av836bpeI3CcitwBnAkFo4Tpc1sleABFZVKncH2UTahF5I6G7parGphFKpRCRhkS7OyZIcvuF3RvZjDz9OLt5kqWci7f6DQCFhuoLtYjIHJwLJI6N8TNcGtO/zfHdD4FngS8D38fFX88EblFVFZGZwKM4v3bZKaePust3Rq2kgNmp404hIp1PIBJIzbRf48IFzpLWA+yd8yzLFl5K4/KzkQuWR1212CBeqMNLFejBJTbaQDwTf80CdonIARE5M/yFd4cM4iKbXg38Htirqof9JjOAik3rXk6hFt8ZdQrxvFsWTKGWdA34pcPUTPuldu6asKSXvPItjO3azdij29HNj0RdtfigIEczl0ohIv8IoKpPhKKMpowYKuE4r/ad4aXyIm6Y+Aiu3yVDeFX1ReBinKvvPFXtDX3dAGT7tstGuYeQfx0fX1nGcqtKoSJdg9RE+0E6umPZwkvhF49lfFdjN9fSUWg4mrlUkOaKlp7mSeBTpe7sreZvAY/hrOZjLGSfcKoRJ+ThVK0zyDXjQJkox4CXcE9/MDy0G1gz3bKrTT2KdC21HziR/t2yURYtfz9sP0BjOjS2JvoSyoUADRWTlZyHy2ZejnXTQlX3i8g+EZkdckkUjH+a/BTwS+DyXEPhxXV0/CPwAhAetBNvocZ1PjUD/4wbKJHIx+Z6FGlPotsvGL4P8OLL57F39xO84sx3Mnv7AWS/Szeb2rmLxoULaiWMsjxoxa3oMGtF5F7gLtz/a6ose9NhEDe68Acl7HsFLv/0OgARmaWqo1nbnIaztP9CVX8ZWl9RoS7HyMTrVPVKXAPcgHtsnmoG31hRxyKduPbLHnGYESe9e5BXnPI6jt++1/mk586Z+D5JqWerQTU7E33oZydpI+DKLJErJ5uAN4VHGRbBfcBG4M04q3lujm26cRn1vi4iN4XWJ8NH7fMY9+DyPyTGbKlnkQ6T1PYDOPyS2Tz1ilFaDi5mbNfuifWBRd24cEHGlGkG3qLWjKWih1N9TlU3+OW5Ch7nEC6q5NNSZDymqv4B+B3O9fEO4IIcm10CPAM8DVwvIioiisu0V7Gn0bLEUfvcsu243tI+Vb0p/x7xwETakcT2C6zqwy+ZzdN7fsHLz30v8huXciKXFR1OymQQVRx1VVDVLT5e+y4ROaCq1xSx+0uBg8B/Aj8QkQZVDd/FAt/6Tbj0CduAzTh/9VunX/vclKMzcRw3197DuDvKdX6anVh3RplIO5Lafo0LF/BMSyM7h7dy7ll/TuP2vbBwQU4Xh7k9jkUUZozG1sNVEiIyU1WPAqjqv4rIH1N8RsdGXO6aZmA3bsj4baHvf4Qb1BJEfGzwlvhfTqPqBVVquiwpdgefYL5N03OvBfGIfYVm4poOJtIZJKr9Gr0Y7z8d9u58iKXnXI7sPcLhs8/guD3PM2PuMmT/QXTunIwJho0svOujxviEiAx4nzi4UYSfE5EVqjqYb0eYiIC6GrgfF553Dy6r3jdD+T/ei4uI2gD8O3BCeX9CbqYt1KpaVGIVn8t2VWhVF9CrqkMi0keFR8WZSGeStPYD13H4W3mW09/yZg6ONTB2/AzmPHmIsUe3Twg5O83NkQ9RpSFVc0J9G9AnIqtUNeWHdvcCf42LBpkKBf4Dl2hpP26k4jLgbOBXfpvTAfVlfxN4DS5+u6KUfSquqfAB432hVSs1PWtxS45dynlsE+lpEmX7tTd08uTrjmPb5Uc48T2XIQ0NnPblBzhhz+jEqMPUzl3WcVgICg2j4xlL0lHVfcAXcFZvsO45YJOfIGAqRoC9uDC9Jpy1/BAuBWpQ3lFVTYnIXOB9wGXlqX1+ypnmtGREpClXcLn/rgs/Um7RokUlH8NEunJUuv0uX/RxUjt3sesdLew+9CDNV13C3J/NZF6fmxR61o693G3CXBRSm64PVPUBEbnKdwKO+3U/FpE/EpErVDXfHIivxUV17AZ+ixPq84HzRWS+qr49tO1JwKuAN1Xml2RSdYs6BxVPPG8iXVGqMnHAHy5bzDnzvs78C9/K4v87k9MeGJ6wnG3EYQmo0nB0LGOpITYAX8xa9yXgzSJyzJ/Qz9JyHa6/5kc433Ynzv1xMS7/9FMi8loRme93Wwr8L1XdX6HfkEHVLWrf+dQDrBCRNlxuiQ0iMkwFEs+bSJeXarffeR++mWVf3MHmO/Yzck4Pr7zpacCGg08bhYajyXd35EJVfykivxKR1aq6zq9TEfk74Msi8mFVDc8L9xrcAJdP4/zSn8SlMN2Bc4G8BGfUngD8HCfS/wm8sUo/qfpC7R+RszucKpIv1ES6/FSz/Vo/cDP7j9vDwM0vsOyMtyI/bTCBLhOiiozWaCA1oKobxM3XeaGq/tyv2+st5x+IyPdws6wfwg1wOR44irO83wc8j8ukdzIupelS3KjHD3tj5RyqOII3Fj7qSmAinXxmPzDEjCce5NUHF7NJS06KZuRivLaF2vMN4HacFQxMJG4K/NC3+YT/F+ImuF0MtKrqh0TkatxUYSfhokY2+SL+GDdicSOwU0RmATdkDYopO3HwUZcdE+nks23bNt5w2Qn8Zv9mNunGqKtTeyjI6FjGMh1EpEVE2kSko0w1nDZ+8MtDXpjD6w/j3Bu/xcVMryEt6iv9ZqfgXBtz/Oc/8q8rceJ9EvBXwHwqHO0ENWhRm0gnn23btnH77bfbbOGVRMdhNDsx3LTo8AOgOkSkJRSyGSmq+gURuUFEzsNNmzXq198mIjuBo6r6EwAv6Ld4K/su4Ju4gS//ASzwrw8DH8R1ou8CzlDVHZX+HTUl1CbSycdEukoocLRw14f3y67AuQaCEalduBzmQ6RzYIzgLMxYCDWAqt4oIq8Dvioim3HDvsdV9d6s7cKfnxGRTTjL+UWcW+Qe4MO42OprcOlUs6NLKkLNuD5MpJOPiXQV0XE4Mpq55NvcdSKHBbkL1xm3kcyRqk3ESKQDVPUBVX0fsAf4gIgcV8A+NwNP4QT5G7jkSz8FzgP+Dpd/uvSY0yKoCaE2kU4+JtJVZlzRI0cyliJZGRrk1IIbut0GNMfF7TEJPwQOA18TkZML2P46XMKlHuBtuOiQx4DngBSuU7HiJN71YSKdfEykI0AVnaaPOjQitcmLc5wFGnDx1Lik/5uBdSJyw2Sjav32LwA3i8jxuA7FYEakh1X11mrUGRIu1CbSycdEOhoO6PA99x75zvys1bNFJJy8aL2qrp+kiC04wRohx4jUuKOqj/mETZ8Rkb04N8YdqvpU9rYishz4KPA4Lta6Cyj6EWQ6JFaoTaSTj4l0dKhqKcmE2oBWn0FxPdAlIiNUYERqNfCZIz8iImfi5jy8HifIE4jIh3CW9BHgUeAM4DxVvb+adU2kUJtIJx8T6eThreuwhb0uqrqUE1V9GkBEFovIK1T1v/znBlzej0PAzbiETZ/FTRpwfzXrGLlQ+zCfDf7j2qkSz5tIx4ti2w9MpI344aNA3gKcLiJn4ZIznYDLcb0IN8z8POAi4Gzx0yBVq36RCzXO37NWVbeKSD9T5I0wkY4dRbWfibQRR1T1iIhcgEtr+glcp2EjLlHT47g81TOBPwO6qynSEI/wvJWke4ub8m24Z88eE+n4UXD7HT582ETaiC2q+gvgNNwUW2/F5ZruwOX8uAqXsGknriO1qkiVbwzHVsBZYdeq6oif76w96/uJxPO4jFWPTfOQ84F9NVIGwFmqWpWg+1xE0H4Qn/NfjjIibT8jGcTB9REknt/KJInn8R0YIjKoqiumc7BaKiMmVLX9ylVOXMowjEKIg1AHiechoWE+dY61n2FUmMiF2o8KqkjieaPyWPsZRuWJQ2diMUw2Sqpey0ga5frNcTn/9diGRgRE3ploGIZh5CdpFrVhGEbdkQihFpEmEen3S2sJ+7eKyOpQWX1+KagsP81Qv4gM+LKKro8vY+K40/1NSSLq9vP7WRsayUVVY78Aq3EzSwD0F7lvC9AL9IbKavHv+woso8u/NgH9pdQndMxWX5+Sf1PSlqjbz9rQlqQvibCoKWL0Wzbq8uT2hcvSdGLzgial1MxUj8Ol1EdVh/zEnxt8fUr+TQkk0vbz5VgbGoklKUJdVnwioVLoxc30UBLqpi1aC3SXWoYxrfYDa0MjgSRFqIPRbzD9JOUlleWTjPeoixsuugyfwze40NtKrUdCibz9wNrQSC6RD3gpkJJHv3nrqwdY4ed0C8oaLrQsf4G3AS0iMuT3K7Y+LSLSg7uwe4DBEspIKpG2ny/H2tBILBZHbRiGEXOS4vowDMOoW0yoDcMwYo4JtWEYRswxoTYMw4g5dSvUItLmh/72hYYnd/gBDZU8bn8ly68XrP2MeqIuhdrHw3araqeqdvt1Fb3AjfJh7WfUG0mJoy43HcCdoc/rcfkf+oBVItKOG8CwAzcr8Yj/LhjR1ovL97AKN4S4RVU7AUSkj8zRb7244cUbgE0V+j31hrWfUVfUq1Bn0xx6P6Cq60VkwH8ewQ1m6CU9+izIlDakqj1Zj9yBIIS3bQfeqH4C2Mr8hLrG2s+oaepVqDfiLsiN/nM3ziILE1zErf67IVy2tiGYeNTeAm5IsbfEUNVuP1ItvG07TkxGKvmj6ghrP6OuqEuh9lnQ+kIdQ0PeCusA2kXkfGCH76RagrvIe4E+EdkK5LKqRoBn/fvsbfuAfhGxR+cyYO1n1Bs2hNyoCD4vRzcupegOVV0XuBd8UqNKHbekY4hIF86f3YYT9iGcJd5USnmGUU5MqI2y46MyekMddKtJ520uu+j5xE1rVLXk9KWhsnpxfm6zno3YUJeuD6PiVCsqoxm4FlgDtGWF6G312+HLbvLlge9wLOSHZJUZ7D/sX1tUtd3fmMJ1bwt+VzluHoZRl3HURtXJjsroxgnxEtJRGUGkxQhZURnAnaHIjD5VHfJl9AFX+tdNWZZ6L3CtF/hALLf4z+0l/o5g/xX++CN+fXbdw7/LMKaNWdRGJah0VEaLL7MJZ5VPRXCjmO60WcH+gUUdnm1mou7AxtDvKvWmYBgTmFAbZacKURmtuOT9w6HjtfoOwUBEe3CRGlB5yza77oFVPZR3L8MoEOtMNAzDiDnmozYMw4g5JtSGYRgxx4TaMAwj5phQG4ZhxBwTasMwjJhjQm0YhhFzEh9HLUKK9A1nXLW031SOcrLKmLSc0HYl17eIuoyHj1XKsXOV5b8q6nxllUOu9+FyqnGe8tUx+3xNVufs+ucpIyBfWcec00n2z3vuKkGu9si+bqb4Plx/yP2b8jHluc6uZ/b2hdQ5jiQ6jtqf8BlZq8eKPeHlKGeSMo4pJ8d2Rdd3OnUp9th5yjqm7HxlFVtONc5TNrmOSWF1DnPMOS6hjPC+FLF/xc7RJOcGJq9bsXUvhVznOt8xp/w+rmIdiVCLSHLvDoZhGICqSrWOFdXdo7vQ7GX5qBeLWkS6ijlf9W5RF3u+8tSxLizqQs6XWdRpSv1/TYeoLOpBVV1R9QMnFDtfxWHnqzjsfBVHFOfLoj4MwzBijgm1YRhGzIlKqKvq36kB7HwVh52v4rDzVRxVP1+JDs8zDMOoB/Ja1CLSJCL9fmkVkRafEL43zz6r/QzUBePL7ReRAX+cvMcNfe7zM2nEgrier9B+XaEZSSInrudLRNr8d33FHquSxPV8+X16/RKb8wXxPWf+Wgy+z5796FhUddIFWA20+vf9/rUFN+1Qvn3a8pWbY58u/9qEm74o73Fxk4qCm0mjt5hjVXKJ6/kKnauHgnMXhyWu5ws3OW9H1OcnQeerDVgd9flJ0jkL7dcW7JtvmcpHvZIS55kL3UH6/d2lI3QH6Qpvq5kxicNTHVfd1EsdwAbc3HxxIZbny7OGzJnB40Ccz1d3YA0VU68KE9fz1Qms9GV15Pg+SuJ6zgIKGlNSsc5EPXamaJh6Fuhe0jNGT1X+RtxceN3TrWscqOT58hdP3ER6WlT4/7UJJz49fp/EU+nrEVjry1o1vZrGh0qfM+9e2VLItlMJ9RacuQ5uctFCmOcr0eL9MZ2k7yiT3mH8tj2qOjLVccXNQh2IdZx8YrE8X7g/VTvuIoqT8MT1fDX77YZzfBclcT1f4ZngjykrYuJ6zsBdk5sKqdBUwyXXAxvEz+QsriOqB1ghIh1eKINKdvgDt+As3TZCM0Xnw//ANqBFRIb8/pMeFxgRkR5ffqF3/GoQy/PlrYJgvzi5imJ5vkj/v5qJ1xNbXM9XuF5xMgQgpufMH7eFAmeqt/A8wzCMmGMjEw3DMGKOCbVhGEbMMaE2DMOIOSbUhmEYMceE2jAMI+aYUBuGYcQcE2rDMIyYY0JtGIYRc/4/Lmy5n81af5MAAAAASUVORK5CYII=\n", "text/plain": [ "<Figure size 360x144 with 5 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "<Figure size 360x144 with 5 Axes>" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "for ic in np.unique(data['Cluster']):\n", " bounds = np.array([0,5,10,15,20,40,100,200,450])\n", " norm = mpl.colors.BoundaryNorm(boundaries=bounds, ncolors=256)\n", " #pcm = ax[1].pcolormesh(X, Y, Z1, norm=norm, cmap='RdBu_r')\n", " tm=40\n", " sm=40\n", "\n", " fig = plt.figure(figsize = (5,2.))\n", " gsv = gridspec.GridSpec(2,1,left=.08,right=.98,hspace=1,bottom=.1,top=.85,height_ratios=[4,.2])\n", " gs1=gridspec.GridSpecFromSubplotSpec(1,5,subplot_spec=gsv[0],wspace=.3,hspace=.34,\n", " width_ratios=[1,1,.05,.05,.6])\n", " axSA = fig.add_subplot(gs1[0])\n", " axCT = fig.add_subplot(gs1[1])\n", " axLmap = fig.add_subplot(gs1[-1])\n", "\n", " gscb = gridspec.GridSpecFromSubplotSpec(11,1,subplot_spec=gs1[2])\n", " axcb = fig.add_subplot(gscb[1:-1])\n", "\n", " axL=fig.add_subplot(gsv[1])\n", "\n", " axSA.plot((0,sm),(0,sm),'k-',lw=.5)\n", " axCT.plot((0,tm),(0,tm),'k-',lw=.5)\n", "\n", " vm0=-150\n", " args={'marker':'.','s':1,'norm':norm}\n", " dataCl=data.loc[(data.Cluster==ic)]\n", " #ps=et.varvarScatter(axSA,dataCl,'SA','mod_vosaline','Z',vmin=vm0,vmax=450,cm=cm1,args=args)\n", " #ps=et.varvarScatter(axCT,dataCl,'CT','mod_votemper','Z',vmin=vm0,vmax=450,cm=cm1,args=args)\n", " \n", " iiT=(~np.isnan(dataCl['CT']))&(~np.isnan(dataCl['mod_votemper']))\n", " iiS=(~np.isnan(dataCl['SA']))&(~np.isnan(dataCl['mod_vosaline']))\n", " counts, xedges, yedges, m1=axCT.hist2d(dataCl.loc[iiT,['CT']].values.flatten(),\n", " dataCl.loc[iiT,['mod_votemper']].values.flatten(),bins=25*3,norm=LogNorm(vmin=1,vmax=5*10**3),\n", " cmin=1,cmax=5*10**3)\n", " counts, xedges, yedges, m2=axSA.hist2d(dataCl.loc[iiS,['SA']].values.flatten(),\n", " dataCl.loc[iiS,['mod_vosaline']].values.flatten(),bins=25*3,norm=LogNorm(vmin=1,vmax=5*10**3),\n", " cmin=1,cmax=5*10**3)\n", " cb=fig.colorbar(m1,cax=axcb)\n", " cb.set_label('Count')\n", " #cb.set_ylim(0,450)\n", "\n", " ntick=np.arange(0,sm,int(sm/4))\n", " ntickl=[str(i) for i in ntick]\n", " for ax in (axSA,):\n", " ax.set_xlim((0,sm))\n", " ax.set_ylim((0,sm))\n", " ax.set_xticks(ntick)\n", " ax.set_xticklabels(ntickl)\n", " ax.set_yticks(ntick)\n", " ax.set_yticklabels(ntickl)\n", "\n", " stick=np.arange(0,tm,int(tm/4))\n", " stickl=[str(i) for i in stick]\n", " for ax in (axCT,):\n", " ax.set_xlim((0,tm))\n", " ax.set_ylim((0,tm))\n", " ax.set_xticks(stick)\n", " ax.set_xticklabels(stickl)\n", " ax.set_yticks(stick)\n", " ax.set_yticklabels(stickl)\n", "\n", "\n", " for ax in (axSA,axCT,):\n", " ax.set_aspect(1, adjustable='box')\n", " #ax.set_xlabel('Observed')\n", "\n", " axSA.set_ylabel('Modeled')\n", " axCT.set_ylabel('Modeled')\n", " axSA.set_xlabel('Observed')\n", " axCT.set_xlabel('Observed')\n", "\n", "\n", " axSA.set_title('S$_A$ (g kg$^{-1}$)')\n", " axCT.set_title('$\\Theta$ ($^{\\circ}$C')\n", "\n", " #viz_tools.set_aspect(axLmap)\n", " for axLi in (axLmap,):\n", " axLi.set_aspect(1, adjustable='box')\n", " contour_lines = axLi.contour(blon,blat,bathyZ,[1e-5],\n", " colors='black',zorder=2,linewidths=.5)\n", " axLi.set_xlim(-1.02,0.81)\n", " axLi.set_ylim(-1.5,1.8)\n", " axLi.axis('off')\n", " dataTSCl=dataCl.loc[(dataCl.SA>=0)|(dataCl.CT>=0)]\n", "\n", " lons15,lats15=rotmap(dataTSCl['Lon'], dataTSCl['Lat'],lon0,lat0,theta)\n", " axLmap.plot(lons15,lats15, '.',color='blue',markersize=1)\n", " axLmap.set_title('Observation\\nLocations',fontsize=8)\n", "\n", " axL.set_title('Observation Times',fontsize=8)\n", " p1a,=axL.plot(dataTSCl.dtUTC,np.zeros(np.shape(dataTSCl.dtUTC)),'.',color='blue',markersize=6)\n", " axL.set_yticks(());\n", " yearsFmt = mdates.DateFormatter('%d %b %Y')\n", " axL.xaxis.set_major_formatter(yearsFmt)\n", "\n", " axL.xaxis.set_ticks([dt.datetime(2013,1,1),\n", " dt.datetime(2014,1,1),\n", " dt.datetime(2015,1,1),\n", " dt.datetime(2016,1,1), \n", " dt.datetime(2017,1,1)])\n", " #labels=axL.xaxis.get_ticklabels()\n", " for tick in axL.get_xticklabels():\n", " #tick.set_rotation(90)\n", " tick.set_horizontalalignment('center')\n", " axL.set_ylim(-.1,.3)\n", " axLpos=axL.get_position()\n", " new = mpl.transforms.Bbox.from_bounds(axLpos.bounds[0],axLpos.bounds[1],axLpos.bounds[2]-.05,axLpos.bounds[3])\n", " axL.set_position(new)\n", " #axL.legend(handles=[p1,p2,p3],loc=8,ncol=3,bbox_to_anchor=[.5,-4])\n", " axL.set_frame_on(False)\n", " #axL.axes.get_yaxis().set_visible(False)\n", " #axL.axes.get_xaxis().set_visible(True)\n", " xmin, xmax = axL.get_xaxis().get_view_interval()\n", " ymin, ymax = axL.get_yaxis().get_view_interval()\n", " axL.add_artist(mpl.lines.Line2D((xmin, xmax), (ymin, ymin), color='black', linewidth=2))\n", " fig.suptitle('Cluster '+str(ic))\n", " fig.savefig(f'/data/eolson/results/MEOPAR/figs/eval/dfoCTDEval{modver}_Cluster{int(ic)}.png',dpi=200,transparent=True)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'/data/eolson/results/MEOPAR/figs/eval/dfoCTDEvalHC1905_Cluster5.png'" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "f'/data/eolson/results/MEOPAR/figs/eval/dfoCTDEval{modver}_Cluster{int(ic)}.png'" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "All CT:\n", "all:\n", "0= no cluster\n", " N: 502228\n", " bias: 0.010178431286476552\n", " RMSE: 0.46745035689096087\n", " WSS: 0.9672925072485713\n", "cluster 0\n", " N: 73537\n", " bias: 0.0017230314793259538\n", " RMSE: 0.5708930154972339\n", " WSS: 0.9687699972071648\n", "cluster 1\n", " N: 21270\n", " bias: -0.055345233853701714\n", " RMSE: 0.4133331015912365\n", " WSS: 0.9629381779908348\n", "cluster 2\n", " N: 4770\n", " bias: -0.13035778654897712\n", " RMSE: 0.579056603268838\n", " WSS: 0.9543147313093028\n", "cluster 3\n", " N: 308314\n", " bias: 0.044213969612707515\n", " RMSE: 0.4375460617148876\n", " WSS: 0.9656761229462778\n", "cluster 4\n", " N: 56479\n", " bias: -0.07533580886422797\n", " RMSE: 0.4539695548298178\n", " WSS: 0.9610839366393273\n", "cluster 5\n", " N: 37858\n", " bias: -0.06848508347437665\n", " RMSE: 0.5107559175510207\n", " WSS: 0.9662152377158586\n" ] } ], "source": [ "print('All CT:')\n", "print('all:')\n", "print('0= no cluster')\n", "et.printstats(data,'CT','mod_votemper')\n", "for icl in range(0,6):\n", " print('cluster',icl)\n", " et.printstats(data.loc[(data.Cluster==icl),:],'CT','mod_votemper')" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "All SA:\n", "all:\n", "0= no cluster\n", " N: 502228\n", " bias: 0.045717943413723816\n", " RMSE: 0.47423742692779985\n", " WSS: 0.9671108283088208\n", "cluster 0\n", " N: 73537\n", " bias: -0.03258164318081569\n", " RMSE: 0.5990158399694019\n", " WSS: 0.9495515153168926\n", "cluster 1\n", " N: 21270\n", " bias: -0.053789987653324545\n", " RMSE: 0.3846774993827583\n", " WSS: 0.9591978974583248\n", "cluster 2\n", " N: 4770\n", " bias: 0.04849198274418143\n", " RMSE: 0.40240392773120703\n", " WSS: 0.9774414754636228\n", "cluster 3\n", " N: 308314\n", " bias: 0.06617129494753371\n", " RMSE: 0.4780400641052621\n", " WSS: 0.9600506367611026\n", "cluster 4\n", " N: 56479\n", " bias: 0.1478409393573905\n", " RMSE: 0.3155101670602014\n", " WSS: 0.970477478251466\n", "cluster 5\n", " N: 37858\n", " bias: -0.06555684889193714\n", " RMSE: 0.4164683768852029\n", " WSS: 0.9710224920012441\n" ] } ], "source": [ "print('All SA:')\n", "print('all:')\n", "print('0= no cluster')\n", "et.printstats(data,'SA','mod_vosaline')\n", "for icl in range(0,6):\n", " print('cluster',icl)\n", " et.printstats(data.loc[(data.Cluster==icl),:],'SA','mod_vosaline')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python (py39)", "language": "python", "name": "py39" }, "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.9.2" } }, "nbformat": 4, "nbformat_minor": 4 }