import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import datetime as dt
from salishsea_tools import evaltools as et, viz_tools
import os
import datetime as dt
import gsw
import matplotlib.gridspec as gridspec
import matplotlib as mpl
import matplotlib.dates as mdates
import cmocean as cmo
import scipy.interpolate as sinterp
import cmocean
import json
import f90nml
from collections import OrderedDict
from scipy.stats.mstats import gmean
fs=16
mpl.rc('xtick', labelsize=fs)
mpl.rc('ytick', labelsize=fs)
mpl.rc('legend', fontsize=fs)
mpl.rc('axes', titlesize=fs)
mpl.rc('axes', labelsize=fs)
mpl.rc('figure', titlesize=fs)
mpl.rc('font', size=fs)
mpl.rc('font', family='sans-serif', weight='normal', style='normal')
import warnings
#warnings.filterwarnings('ignore')
from IPython.display import Markdown, display
%matplotlib inline
df=pd.read_excel('/ocean/ksuchy/MOAD/observe/SSMSP_TransBoundary_Extract_2014-2019_Verticals_Keister_Lab.xlsx',engine='openpyxl',sheet_name='SSMSP 2014-2019 Density&Biomass')
df
BugSampleID | Project | Sample Code | Sampling Group | Station | Site Name | Basin | Sub Basin | Latitude | Longitude | ... | Ind Carbon (ug) | Density (#/m3) | Final Carbon (mg/m3) | Species Size Category Aggregation | Size Category Aggregation | Collection Confidence | Carbon Regression EQ | C to DW multipier | DW Regression Equation | C/DW Source | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 93945 | SSMSP | 060817HCB004V1454 | HCSEG | HCB004V | Sisters Point | Hood Canal | S Hood Canal | 47.35620 | -123.0249 | ... | 122.333000 | 5.169013 | 3.185477 | Amphipod | Amphipod | High | C(ug)=(0.0049*([Length(mm)])^2.957)*1000)*37% | C = DW * 37% | DW(ug)=0.0049*([Length(mm)])^2.957)*1000 | Ikeda & Shiga, 1999 |
1 | 93946 | SSMSP | 060817HCB004V1454 | HCSEG | HCB004V | Sisters Point | Hood Canal | S Hood Canal | 47.35620 | -123.0249 | ... | 107.303200 | 0.068013 | 0.010533 | Amphipod | Amphipod | High | C(ug)=(0.0049*([Length(mm)])^2.957)*1000)*37% | C = DW * 37% | DW(ug)=0.0049*([Length(mm)])^2.957)*1000 | Ikeda & Shiga, 1999 |
2 | 93962 | SSMSP | 060817HCB004V1454 | HCSEG | HCB004V | Sisters Point | Hood Canal | S Hood Canal | 47.35620 | -123.0249 | ... | 17.764660 | 21.764267 | 0.397324 | Amphipod | Amphipod | High | C(ug)=(0.0049*([Length(mm)])^2.957)*1000)*37% | C = DW * 37% | DW(ug)=0.0049*([Length(mm)])^2.957)*1000 | Ikeda & Shiga, 1999 |
3 | 94018 | SSMSP | 030917HCB003V1218 | HCSEG | HCB003V | Eldon | Hood Canal | S Hood Canal | 47.53787 | -123.0096 | ... | 343.152100 | 1.730036 | 0.564992 | Amphipod | Amphipod | High | C(ug)=((0.02 * [Length (mm)]^2.1)*1000)*37% | C = DW * 37% | DW(μg) = (0.02 * [Length(mm)]^2.1)*1000 | Kafanov & Fedotov, 1982 |
4 | 94030 | SSMSP | 030917HCB003V1218 | HCSEG | HCB003V | Eldon | Hood Canal | S Hood Canal | 47.53787 | -123.0096 | ... | 17.764660 | 0.812593 | 0.090677 | Amphipod | Amphipod | High | C(ug)=(0.0049*([Length(mm)])^2.957)*1000)*37% | C = DW * 37% | DW(ug)=0.0049*([Length(mm)])^2.957)*1000 | Ikeda & Shiga, 1999 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
81582 | 31509 | SSMSP | 050615MUKV1200 | TUL | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | ... | 7.450710 | 98.804469 | 0.252324 | Unknown Egg | Unknown Egg | Moderate | C (ug) = 8.0935*[Length (mm)]-1.0883 | C (ug) = 8.0935*[Length (mm)]-1.0883 | NONE | Keister Lab estimate, 2016 |
81583 | 38434 | SSMSP | 081315MUKV1121 | TUL | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | ... | 7.450710 | 8.634707 | 0.011568 | Unknown Egg | Unknown Egg | Moderate | C (ug) = 8.0935*[Length (mm)]-1.0883 | C (ug) = 8.0935*[Length (mm)]-1.0883 | NONE | Keister Lab estimate, 2016 |
81584 | 38675 | SSMSP | 082615MUKV1116 | TUL | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | ... | 2.868051 | 27.045302 | 0.077567 | Unknown Egg | Unknown Egg | Moderate | C (ug) = 8.0935*[Length (mm)]-1.0883 | C (ug) = 8.0935*[Length (mm)]-1.0883 | NONE | Keister Lab estimate, 2016 |
81585 | 39535 | SSMSP | 050615CAMV1305 | TUL | CAMV | Camano Head | Whidbey Basin | S Whidbey Basin | 48.05901 | -122.3873 | ... | 7.450710 | 43.628610 | 0.325064 | Unknown Egg | Unknown Egg | Moderate | C (ug) = 8.0935*[Length (mm)]-1.0883 | C (ug) = 8.0935*[Length (mm)]-1.0883 | NONE | Keister Lab estimate, 2016 |
81586 | 104254 | SSMSP | 080318HCB004V1114 | HCSEG | HCB004V | Sisters Point | Hood Canal | S Hood Canal | 47.35620 | -123.0249 | ... | 0.200000 | 4.105091 | 0.004105 | Unknown Nauplius | Unknown Nauplius | High | NONE | NONE | NONE | Keister Lab estimate, 2016 |
81587 rows × 38 columns
df.keys()
Index(['BugSampleID', 'Project', 'Sample Code', 'Sampling Group', 'Station', 'Site Name', 'Basin', 'Sub Basin', 'Latitude', 'Longitude', 'Date Category', 'Sample Date', 'Sample Year', 'Sample Month', 'Sample Time', 'Tow Type', 'Mesh Size', 'Diameter (cm)', 'Station Depth (m)', 'Max Tow Depth (m)', 'Min Tow Depth (m)', 'Vol Filtered (m3)', 'Broad Group', 'Mid-Level Group', '1st Word Taxa', 'Genus species', 'Life History Stage', 'Total Ct', 'Ind Carbon (ug)', 'Density (#/m3)', 'Final Carbon (mg/m3)', 'Species Size Category Aggregation', 'Size Category Aggregation', 'Collection Confidence', 'Carbon Regression EQ', 'C to DW multipier', 'DW Regression Equation', 'C/DW Source'], dtype='object')
df.drop(labels=['BugSampleID','Project','Sampling Group','Date Category','Tow Type','Species Size Category Aggregation','Collection Confidence','Carbon Regression EQ','C to DW multipier','DW Regression Equation','C/DW Source'
],axis=1,inplace=True)
df
Sample Code | Station | Site Name | Basin | Sub Basin | Latitude | Longitude | Sample Date | Sample Year | Sample Month | ... | Broad Group | Mid-Level Group | 1st Word Taxa | Genus species | Life History Stage | Total Ct | Ind Carbon (ug) | Density (#/m3) | Final Carbon (mg/m3) | Size Category Aggregation | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 060817HCB004V1454 | HCB004V | Sisters Point | Hood Canal | S Hood Canal | 47.35620 | -123.0249 | 2017-06-08 | 2017 | JUN | ... | Amphipod | Amphipoda-Hyperiidea | HYPEROCHE | HYPEROCHE | Unknown | 76.0 | 122.333000 | 5.169013 | 3.185477 | Amphipod |
1 | 060817HCB004V1454 | HCB004V | Sisters Point | Hood Canal | S Hood Canal | 47.35620 | -123.0249 | 2017-06-08 | 2017 | JUN | ... | Amphipod | Amphipoda-Hyperiidea | HYPERIA | HYPERIA | Unknown | 1.0 | 107.303200 | 0.068013 | 0.010533 | Amphipod |
2 | 060817HCB004V1454 | HCB004V | Sisters Point | Hood Canal | S Hood Canal | 47.35620 | -123.0249 | 2017-06-08 | 2017 | JUN | ... | Amphipod | Amphipoda-Hyperiidea | THEMISTO | THEMISTO PACIFICA | Unknown | 320.0 | 17.764660 | 21.764267 | 0.397324 | Amphipod |
3 | 030917HCB003V1218 | HCB003V | Eldon | Hood Canal | S Hood Canal | 47.53787 | -123.0096 | 2017-03-09 | 2017 | MAR | ... | Amphipod | Amphipoda-Cyphocarididae | CYPHOCARIS | CYPHOCARIS CHALLENGERI | Unknown | 66.0 | 343.152100 | 1.730036 | 0.564992 | Amphipod |
4 | 030917HCB003V1218 | HCB003V | Eldon | Hood Canal | S Hood Canal | 47.53787 | -123.0096 | 2017-03-09 | 2017 | MAR | ... | Amphipod | Amphipoda-Hyperiidea | THEMISTO | THEMISTO PACIFICA | Unknown | 31.0 | 17.764660 | 0.812593 | 0.090677 | Amphipod |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
81582 | 050615MUKV1200 | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | 2015-05-06 | 2015 | MAY | ... | Unknown Egg | Unknown | UNKNOWN | UNKNOWN | EGG Lg | 4500.0 | 7.450710 | 98.804469 | 0.252324 | Unknown Egg |
81583 | 081315MUKV1121 | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | 2015-08-13 | 2015 | AUG | ... | Unknown Egg | Unknown | UNKNOWN | UNKNOWN | EGG Lg | 385.0 | 7.450710 | 8.634707 | 0.011568 | Unknown Egg |
81584 | 082615MUKV1116 | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | 2015-08-26 | 2015 | SEP | ... | Unknown Egg | Unknown | UNKNOWN | UNKNOWN | EGG Med | 1000.0 | 2.868051 | 27.045302 | 0.077567 | Unknown Egg |
81585 | 050615CAMV1305 | CAMV | Camano Head | Whidbey Basin | S Whidbey Basin | 48.05901 | -122.3873 | 2015-05-06 | 2015 | MAY | ... | Unknown Egg | Unknown | UNKNOWN | UNKNOWN | EGG Lg | 2025.0 | 7.450710 | 43.628610 | 0.325064 | Unknown Egg |
81586 | 080318HCB004V1114 | HCB004V | Sisters Point | Hood Canal | S Hood Canal | 47.35620 | -123.0249 | 2018-08-03 | 2018 | AUG | ... | Unknown Nauplius | Unknown | UNKNOWN | UNKNOWN | Nauplius | 50.0 | 0.200000 | 4.105091 | 0.004105 | Unknown Nauplius |
81587 rows × 27 columns
df.keys()
Index(['Sample Code', 'Station', 'Site Name', 'Basin', 'Sub Basin', 'Latitude', 'Longitude', 'Sample Date', 'Sample Year', 'Sample Month', 'Sample Time', 'Mesh Size', 'Diameter (cm)', 'Station Depth (m)', 'Max Tow Depth (m)', 'Min Tow Depth (m)', 'Vol Filtered (m3)', 'Broad Group', 'Mid-Level Group', '1st Word Taxa', 'Genus species', 'Life History Stage', 'Total Ct', 'Ind Carbon (ug)', 'Density (#/m3)', 'Final Carbon (mg/m3)', 'Size Category Aggregation'], dtype='object')
df['Broad Group'].unique()
array(['Amphipod', 'Amphipod Egg', 'Anthozoan', 'Arachnida', 'Barnacles', 'Bivalve', 'Bryozoan', 'Cephalopod', 'Chaetognath', 'Chaetognath Egg', 'Cladocera', 'Copepod', 'Copepod Egg', 'Copepod Nauplius', 'Crabs', 'Ctenophore', 'Cumacea', 'Dinoflagellate', 'Echinoderm', 'Fish', 'Fish Egg', 'Gastropod', 'Hydrozoan', 'Insect', 'Isopod', 'Krill Egg', 'Krill Nauplius', 'Krill-Adult Juvenile', 'Krill-Calyptopis', 'Krill-Furcilia', 'Larvacea', 'Mollusk Egg', 'Mysid', 'Mysid Egg', 'Nematode', 'Nemertea', 'Nudibranch', 'Ostracod', 'Phoronid', 'Platyhelminthes', 'Polychaete', 'Pycnogonida', 'Scyphozoan', 'Shrimp', 'Siphonophore', 'Siphonophore Gonophore', 'Tunicate', 'Tunicate Egg', 'Unknown', 'Unknown Egg', 'Unknown Nauplius'], dtype=object)
cala=df.loc[df['Broad Group']=='Copepod']
euph=df.loc[df['Broad Group']=='Krill-Adult Juvenile']
amph=df.loc[df['Broad Group']=='Amphipod']
monthcala=cala.groupby(['Sample Month'], as_index=False).mean()
montheuph=euph.groupby(['Sample Month'], as_index=False).mean()
monthamph=amph.groupby(['Sample Month'], as_index=False).mean()
fig,ax=plt.subplots(1,1,figsize=(20,5))
ax.plot(monthcala['Sample Month'],monthcala['Final Carbon (mg/m3)'],'-')
ax.plot(montheuph['Sample Month'],montheuph['Final Carbon (mg/m3)'],'--')
ax.plot(monthamph['Sample Month'],monthamph['Final Carbon (mg/m3)'],'-.')
ax.set_ylim(0,2)
(0.0, 2.0)
df['Mid-Level Group'].unique()
array(['Amphipoda-Hyperiidea', 'Amphipoda-Cyphocarididae', 'Amphipoda-Calliopiidae', 'Amphipoda-Gammaridae', 'Amphipoda', 'Amphipoda-Corophiidae', 'Amphipoda-Caprellidae', 'Cnidaria-Anthozoa', 'Arachnidae', 'Maxillopoda-Cirripedia', 'Bivalvia', 'Bryozoa', 'Cephalopoda-Octopus', 'Cephalopoda-Squid', 'Chaetognatha', 'Cladocera', 'Copepoda-Calanoida', 'Copepoda-Poecilostomatoida', 'Copepoda-Cyclopoida', 'Copepoda-Monstrilloida', 'Copepoda-Harpacticoida', 'Copepoda-Siphonostomatoida', 'Copepoda', 'Decapoda-Brachyura-Cancridae', 'Decapoda-Brachyura-Pinnotheridae', 'Decapoda-Anomura-Paguridae', 'Decapoda-Brachyura-Grapsoidea', 'Decapoda-Anomura-Galatheoidea', 'Decapoda-Brachyura-Majoidea', 'Decapoda-Brachyura-Xanthoidea', 'Decapoda-Anomura-Lithoidea', 'Decapoda-Brachyura', 'Decapoda-Brachyura-cheiragonidae', 'Decapoda-Anomura-Porcellanidae', 'Decapoda-Anomura', 'Ctenophora', 'Cumacea', 'Dinoflagellata', 'Echinodermata', 'Chordata-Fish', 'Gastropoda', 'Cnidaria-Hydrozoa-Leptothecata', 'Cnidaria-Hydrozoa-Trachymedusa', 'Cnidaria-Hydrozoa-Anthoathecata-Pandeidea', 'Cnidaria-Hydrozoa-Anthoathecata', 'Cnidaria-Hydrozoa-Limnomedusa', 'Cnidaria-Hydrozoa', 'Cnidaria-Hydrozoa-Narcomedusa', 'Insecta', 'Isopoda', 'Euphausiidae', 'Euphausiidae-EUPHAUSIA-Nauplii', 'Euphausiidae-Nauplii', 'Euphausiidae-THYSANOESSA-Nauplii', 'Euphausiidae-EUPHAUSIA-Adult', 'Euphausiidae-THYSANOESSA-Adult', 'Euphausiidae-NEMATOSCELIS-Adult', 'Euphausiidae-EUPHAUSIA-Calyptopes', 'Euphausiidae-THYSANOESSA-Calyptopes', 'Euphausiidae-Calyptopes', 'Euphausiidae-EUPHAUSIA-Furcillia', 'Euphausiidae-THYSANOESSA-Furcillia', 'Euphausiidae-Furcillia', 'Chordata-Larvacea', 'Mollusca', 'Mysida', 'Nematoda', 'Nemertea', 'Nudibranchia', 'Ostracoda', 'Phoronid', 'Platyhelminthes', 'Annelida-Polychaeta', 'Pycnogonida', 'Cnidaria-Scyphozoa', 'Decapoda-Caridea-Hippolytidae', 'Decapoda-Caridea-Callianassidae', 'Decapoda-Caridea-Crangonidae', 'Decapoda-Caridea-Pandalidae', 'Decapoda-Caridea-Pasiphaeaidae', 'Decapoda-Caridea', 'Decapoda-Gebiidea', 'Decapoda-Caridea-Sergestidae', 'Cnidaria-Siphonophore-Calycophoran', 'Cnidaria-Siphonophore-Physonect', 'Cnidaria-Siphonophore', 'Chordata-Tunicata', 'Unknown'], dtype=object)
#colListBroad=('Amphipoda', 'Crabs','Krill-Adult Juvenile','Krill-Calyptopis','Krill-Furcilia','Copepod', 'Larvacea',)
colListMid=('Amphipoda-Hyperiidea', 'Amphipoda-Cyphocarididae',
'Amphipoda-Calliopiidae', 'Amphipoda-Gammaridae', 'Amphipoda',
'Amphipoda-Corophiidae', 'Amphipoda-Caprellidae','Copepoda-Calanoida','Copepoda-Poecilostomatoida', 'Copepoda-Cyclopoida',
'Copepoda-Monstrilloida', 'Copepoda-Harpacticoida',
'Copepoda-Siphonostomatoida','Decapoda-Brachyura-Cancridae', 'Decapoda-Brachyura-Pinnotheridae',
'Decapoda-Anomura-Paguridae', 'Decapoda-Brachyura-Grapsoidea',
'Decapoda-Anomura-Galatheoidea', 'Decapoda-Brachyura-Majoidea',
'Decapoda-Brachyura-Xanthoidea', 'Decapoda-Anomura-Lithoidea',
'Decapoda-Brachyura', 'Decapoda-Brachyura-cheiragonidae',
'Decapoda-Anomura-Porcellanidae', 'Decapoda-Anomura','Gastropoda','Euphausiidae', 'Euphausiidae-EUPHAUSIA-Nauplii',
'Euphausiidae-Nauplii', 'Euphausiidae-THYSANOESSA-Nauplii',
'Euphausiidae-EUPHAUSIA-Adult', 'Euphausiidae-THYSANOESSA-Adult',
'Euphausiidae-NEMATOSCELIS-Adult',
'Euphausiidae-EUPHAUSIA-Calyptopes',
'Euphausiidae-THYSANOESSA-Calyptopes', 'Euphausiidae-Calyptopes',
'Euphausiidae-EUPHAUSIA-Furcillia',
'Euphausiidae-THYSANOESSA-Furcillia', 'Euphausiidae-Furcillia',
'Chordata-Larvacea','Cnidaria-Scyphozoa','Cnidaria-Siphonophore-Calycophoran',
'Cnidaria-Siphonophore-Physonect', 'Cnidaria-Siphonophore',
'Chordata-Tunicata')
#colListGenus=('METRIDIA PACIFICA','NEOCALANUS PLUMCHRUS','CALANOIDA','EUCALANUS BUNGII','CALANUS PACIFICUS','CALANUS MARSHALLAE','NEOCALANUS CRISTATUS','EUCALANUS CALIFORNICUS','EUCALANUS','METRIDIIDAE','NEOCALANUS')
#l1=set(df['order'].values)
#l2=set(df['genus species'].values)
#l3=l1|l2
df['Genus species'].unique()
array(['HYPEROCHE', 'HYPERIA', 'THEMISTO PACIFICA', 'CYPHOCARIS CHALLENGERI', 'PRIMNO MACROPA', 'CALLIOPIUS PACIFICUS', 'HYPERIIDEA', 'GAMMARIDEA', 'AMPHIPODA', 'COROPHIUM', 'CAPRELLIDAE', 'CALLIOPIUS CARINATUS', 'PARAPHRONIMA CRASSIPES', 'Anthozoa', 'PEACHIA', 'MITES', 'Arachnidae', 'BARNACLES', 'BIVALVIA', 'BRYOZOA', 'OCTOPODA', 'Teuthida', 'CHAETOGNATHA', 'Chaet/Euphaus Egg', 'EVADNE', 'PODON', 'Evadne', 'CLADOCERA', 'ACARTIA HUDSONICA', 'ACARTIA LONGIREMIS', 'AETIDEUS', 'CENTROPAGES ABDOMINALIS', 'DITRICHOCORYCAEUS ANGLICUS', 'METRIDIA PACIFICA', 'MICROCALANUS', 'OITHONA SIMILIS', 'PARACALANUS', 'PSEUDOCALANUS', 'SCOLECITHRICELLA MINOR', 'PARAEUCHAETA ELONGATA', 'CANDACIA COLUMBIAE', 'CHIRIDIUS GRACILIS', 'OITHONA ATLANTICA', 'PSEUDOCALANUS NEWMANI', 'PSEUDOCALANUS MOULTONI', 'PSEUDOCALANUS Sm', 'THARYBIS FULTONI', 'TRICONIA MINUTA', 'Monstrilloida', 'HARPACTICOIDA', 'GAETANUS PUNGENS', 'NEOCALANUS PLUMCHRUS', 'CALANOIDA', 'TRICONIA CONIFERA', 'EUCALANUS BUNGII', 'TRICONIA BOREALIS', 'OITHONA', 'CALANUS PACIFICUS', 'CALANUS MARSHALLAE', 'TORTANUS DISCAUDATUS', 'PSEUDOCALANUS MIMUS', 'ACARTIA TONSA', 'ONCAEA SUBTILIS', 'Siphonostomatoida', 'ONCAEIDAE', 'BRADYIDIUS SAANICHI', 'PSEUDOCALANUS Lg', 'TRICONIA CANADENSIS', 'NEOCALANUS CRISTATUS', 'PSEUDOCALANUS MINUTUS', 'RACOVITZANUS ANTARCTICUS', 'ACARTIA', 'HEMICYCLOPS', 'ONCAEA PROLATA', 'EPILABIDOCERA AMPHITRITES', 'CTENOCALANUS VANUS', 'SCOLECITHRICELLA OVATA', 'HETERORHABDUS', 'EUCALANUS CALIFORNICUS', 'CYCLOPOIDA', 'TRICONIA SIMILIS', 'SCOLECITHRICELLA Minor', 'Chiridius gracilis', 'GAETANUS SIMPLEX', 'CANDACIA BIPINNATA', 'CANDACIA', 'EUCHIRELLA PULCHRA', 'AETIDEUS ARMATUS', 'TRICONIA', 'GAETANUS MINUTUS', 'EURYTEMORA', 'MESOCALANUS TENUICORNIS', 'EUCALANUS', 'CLAUSOCALANUS', 'SCOLECITHRICELLA DENTATA', 'SCOLECITHRICELLA', 'PLEUROMAMMA ABDOMINALIS', 'Poecilostomatoida', 'EUCHIRELLA PSEUDOPULCHRA', 'EUCHAETIDAE', 'SCAPHOCALANUS BREVICORNIS', 'METRIDIIDAE', 'COPEPODA', 'NEOCALANUS', 'PLEUROMAMMA', 'GAETANUS MILES', 'TRICONIA (tiny)', 'AETIDEUS DIVERGENS', 'CALIGIDAE', 'FARRANULA', 'TORTANUS', 'Tortanus', 'METACARCINUS MAGISTER', 'GLEBOCARCINUS OREGONENSIS', 'METACARCINUS GRACILIS', 'PINNIXA', 'PAGURUS', 'HEMIGRAPSUS', 'GALATHEIDAE', 'PUGETTIA', 'LOPHOPANOPEUS BELLUS', 'CANCER PRODUCTUS', 'FABIA SUBQUADRATA', 'LITHODIDAE', 'OREGONIA GRACILIS', 'PINNOTHERES', 'BRACHYURA', 'Galatheidae', 'Cancridae Sm', 'PINNOTHERIDAE', 'CANCRIDAE', 'Telmessus cheiragonus', 'XANTHOIDEA', 'PACHYCHELES', 'PETROLISTHES', 'Cancridae Lg', 'MAJOIDEA', 'LOPHOLITHODES', 'CHIONOECETES', 'PORCELLANIDAE', 'PAGURIDAE', 'RHINOLITHODES', 'GRAPSIDAE', 'CRYPTOLITHODES', 'DIOGENIDAE', 'ANOMURA', 'PLEUROBRACHIA BACHEI', 'CTENOPHORA', 'Pleurobrachia bachei', 'BEROE', 'CUMACEA', 'NOCTILUCA', 'ECHINODERMATA', 'HOLOTHUROIDEA', 'OPHIUROIDEA', 'FISH', 'Forage FISH', 'Syngnathidae', 'Fish', 'LIMACINA HELICINA', 'CLIONE LIMACINA', 'GASTROPODA', 'GASTROPTERON PACIFICUM', 'Limacina helicina', 'AEQUOREA VICTORIA', 'Mitrocoma cellularia', 'AGLANTHA DIGITALE', 'PANDEIDAE', 'EUPHYSA', 'PROBOSCIDACTYLA FLAVICIRRATA', 'HALITHOLUS', 'RATHKEA', 'OBELIA', 'EUTONINA INDICANS', 'CLYTIA GREGARIA', 'SARSIA', 'LEPTOTHECATA', 'LEUCKARTIARA', 'ANTHOATHECATA', 'HYDROMEDUSA', 'Clytia gregaria', 'Aglantha digitale', 'HYDROID', 'Geomackiea zephyrolata', 'AMPHINEMA', 'AEGINA CITREA', 'STOMOTOCA ATRA', 'BOUGAINVILLIA', 'Euphysa', 'SOLMISSUS', 'HYBOCODON', 'NARCOMEDUSIDA', 'MITROCOMELLA', 'TIAROPSIS', 'HYDROZOA', 'Insecta', 'ISOPODA', 'EUPHAUSIIDAE', 'EUPHAUSIA PACIFICA', 'THYSANOESSA', 'THYSANOESSA RASCHII', 'NEMATOSCELIS DIFFICILIS', 'THYSANOESSA SPINIFERA', 'THYSANOESSA LONGIPES', 'FRITILLARIA', 'OIKOPLEURA', 'LARVACEA', 'LITTORINA', 'ALIENACANTHOMYSIS MACROPSIS', 'METERYTHROPS ROBUSTUS', 'PACIFACANTHOMYSIS NEPHROPHTHALMA', 'MYSIDELLA AMERICANA', 'MYSIDACEA', 'XENACANTHOMYSIS PSEUDOMACROPSIS', 'NEOMYSIS', 'Exacanthomysis davisi', 'PSEUDOMMA', 'NEOMYSIS MERCEDIS', 'NEMATODA', 'Nemertea', 'NUDIBRANCHIA', 'OSTRACODA', 'PHORONIDA', 'PLATYHELMINTHES', 'POLYCHAETA', 'RHYNCHONEREELLA ANGELINI', 'OWENIA', 'TOMOPTERIS', 'PYCNOGONIDA', 'SCYPHOMEDUSA', 'HIPPOLYTIDAE', 'NEOTRYPAEA CALIFORNIENSIS', 'CRANGONIDAE', 'PANDALUS STENOLEPIS', 'PASIPHAEA PACIFICA', 'CALLIANASSIDAE', 'PANDALIDAE', 'CARIDEA', 'UPOGEBIIDAE', 'Caridea', 'SERGESTES SIMILIS', 'DECAPODA', 'MUGGIAEA ATLANTICA', 'Nanomia bijuga', 'Muggiaea atlantica', 'Physonect', 'DIMOPHYES', 'CALYCOPHORAE', 'SIPHONOPHORA', 'ASCIDIACEA', 'SALPA', 'UNKNOWN', 'Unknown'], dtype=object)
df['Sample Date'][0],df['Sample Time'][0]
(Timestamp('2017-06-08 00:00:00'), datetime.time(14, 54))
df['Sample Date'][1000:1020]
1000 2015-08-04 1001 2015-08-04 1002 2015-08-04 1003 2015-08-04 1004 2015-08-17 1005 2015-08-17 1006 2015-08-17 1007 2015-08-18 1008 2015-08-18 1009 2015-08-18 1010 2015-08-18 1011 2015-08-18 1012 2015-07-20 1013 2015-07-20 1014 2015-07-20 1015 2015-08-03 1016 2015-08-03 1017 2015-08-03 1018 2015-07-06 1019 2015-07-06 Name: Sample Date, dtype: datetime64[ns]
df['dtPac']=[dt.datetime.combine(idate, itime) for idate, itime \
in zip(df['Sample Date'],df['Sample Time'])]
df['dtUTC']=[et.pac_to_utc(ii) for ii in df['dtPac']]
df['dtUTC']
0 2017-06-08 21:54:00 1 2017-06-08 21:54:00 2 2017-06-08 21:54:00 3 2017-03-09 20:18:00 4 2017-03-09 20:18:00 ... 81582 2015-05-06 19:00:00 81583 2015-08-13 18:21:00 81584 2015-08-26 18:16:00 81585 2015-05-06 20:05:00 81586 2018-08-03 18:14:00 Name: dtUTC, Length: 81587, dtype: datetime64[ns]
df['Sample Month']=[ii.month for ii in df['dtUTC']]
df.rename(columns={'Sample Code':'Key','Latitude':'Lat','Longitude':'Lon'},inplace=True)
df.loc[0]
Key 060817HCB004V1454 Station HCB004V Site Name Sisters Point Basin Hood Canal Sub Basin S Hood Canal Lat 47.3562 Lon -123.0249 Sample Date 2017-06-08 00:00:00 Sample Year 2017 Sample Month 6 Sample Time 14:54:00 Mesh Size 200 Diameter (cm) 60.0 Station Depth (m) 52.0 Max Tow Depth (m) 47.0 Min Tow Depth (m) 0 Vol Filtered (m3) 14.702999 Broad Group Amphipod Mid-Level Group Amphipoda-Hyperiidea 1st Word Taxa HYPEROCHE Genus species HYPEROCHE Life History Stage Unknown Total Ct 76.0 Ind Carbon (ug) 122.333 Density (#/m3) 5.169013 Final Carbon (mg/m3) 3.185477 Size Category Aggregation Amphipod dtPac 2017-06-08 14:54:00 dtUTC 2017-06-08 21:54:00 Name: 0, dtype: object
towIDlist=['Key','Station', 'Site Name', 'Basin', 'Sub Basin', 'Lat',
'Lon', 'Sample Date', 'Sample Year', 'Sample Month',
'Sample Time', 'Mesh Size', 'Diameter (cm)', 'Station Depth (m)',
'Max Tow Depth (m)', 'Min Tow Depth (m)','dtUTC']
towIDlist2=['Key', 'Station', 'Sample Date','Sample Time','dtUTC']
len(df.groupby(towIDlist)),len(df.groupby(towIDlist2)),len(df.groupby(['Key']))
(2168, 1159, 1159)
biomassDF=df.groupby(towIDlist2,as_index=False).first()\
.loc[:,towIDlist].copy(deep=True)
biomassDF
Key | Station | Site Name | Basin | Sub Basin | Lat | Lon | Sample Date | Sample Year | Sample Month | Sample Time | Mesh Size | Diameter (cm) | Station Depth (m) | Max Tow Depth (m) | Min Tow Depth (m) | dtUTC | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 010218ELIV1151 | ELIV | Eliza Island | Bellingham Bay | Bellingham Bay | 48.63795 | -122.5694 | 2018-01-02 | 2018 | 1 | 11:51:00 | 200 | 60.0 | 120.700 | 110.0 | 0 | 2018-01-02 19:51:00 |
1 | 010818SKETV1058 | SKETV | South Ketron/Solo Point | South Sound | South Sound | 47.15243 | -122.6586 | 2018-01-08 | 2018 | 1 | 10:58:00 | 200 | 60.0 | 132.000 | 122.0 | 0 | 2018-01-08 18:58:00 |
2 | 011119ELIV1052 | ELIV | Eliza Island | Bellingham Bay | Bellingham Bay | 48.63795 | -122.5694 | 2019-01-11 | 2019 | 1 | 10:52:00 | 200 | 60.0 | 124.054 | 114.0 | 0 | 2019-01-11 18:52:00 |
3 | 011315CAMV1330 | CAMV | Camano Head | Whidbey Basin | S Whidbey Basin | 48.05901 | -122.3873 | 2015-01-13 | 2015 | 1 | 13:30:00 | 200 | 60.0 | 175.000 | 170.0 | 0 | 2015-01-13 21:30:00 |
4 | 011315MUKV1415 | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | 2015-01-13 | 2015 | 1 | 14:15:00 | 200 | 60.0 | 200.000 | 190.0 | 0 | 2015-01-13 22:15:00 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1154 | 121917LSNT01V1000 | LSNT01V | Point Williams | Central Basin | N Central Basin | 47.53333 | -122.4333 | 2017-12-19 | 2017 | 12 | 10:00:00 | 200 | 60.0 | 210.000 | 200.0 | 0 | 2017-12-19 18:00:00 |
1155 | 121917NSEX01V1224 | NSEX01V | East Passage | Central Basin | S Central Basin | 47.35862 | -122.3871 | 2017-12-19 | 2017 | 12 | 12:24:00 | 200 | 60.0 | 180.000 | 170.0 | 0 | 2017-12-19 20:24:00 |
1156 | 121918TDBV1327 | TDBV | Thorndyke Bay | Hood Canal | N Hood Canal | 47.78297 | -122.7330 | 2018-12-19 | 2018 | 12 | 13:27:00 | 200 | 60.0 | 112.000 | 109.0 | 0 | 2018-12-19 21:27:00 |
1157 | 122116LSNT01V1057 | LSNT01V | Point Williams | Central Basin | N Central Basin | 47.53333 | -122.4333 | 2016-12-21 | 2016 | 12 | 10:57:00 | 200 | 60.0 | 210.000 | 200.0 | 0 | 2016-12-21 18:57:00 |
1158 | 122116NSEX01V1237 | NSEX01V | East Passage | Central Basin | S Central Basin | 47.35862 | -122.3871 | 2016-12-21 | 2016 | 12 | 12:37:00 | 200 | 60.0 | 180.000 | 170.0 | 0 | 2016-12-21 20:37:00 |
1159 rows × 17 columns
#biomassDF2=biomassDF.loc[biomassDF['Sample Year']==2015].copy(deep=True)
#df2=df.loc[df['Sample Year']==2015].copy(deep=True)
def getbiomass(colname,key,origdf,matchcol):
biomassArray=origdf.loc[(origdf.Key==key)&(origdf[matchcol]==colname),
['Final Carbon (mg/m3)']]
biomass=np.nansum(biomassArray)
return biomass
for icol in colListMid:
biomassDF[icol]=[getbiomass(icol,ikey,df,'Mid-Level Group') for ikey in biomassDF['Key']]
#for icol in colListGenus:
#biomassDF[icol]=[getbiomass(icol,ikey,df,'Genus species') for ikey in biomassDF['Key']]
biomassDF
Key | Station | Site Name | Basin | Sub Basin | Lat | Lon | Sample Date | Sample Year | Sample Month | ... | Euphausiidae-Calyptopes | Euphausiidae-EUPHAUSIA-Furcillia | Euphausiidae-THYSANOESSA-Furcillia | Euphausiidae-Furcillia | Chordata-Larvacea | Cnidaria-Scyphozoa | Cnidaria-Siphonophore-Calycophoran | Cnidaria-Siphonophore-Physonect | Cnidaria-Siphonophore | Chordata-Tunicata | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 010218ELIV1151 | ELIV | Eliza Island | Bellingham Bay | Bellingham Bay | 48.63795 | -122.5694 | 2018-01-02 | 2018 | 1 | ... | 0.0 | 0.000000 | 0.0 | 0.0 | 0.010136 | 0.0 | 0.000000 | 0.0 | 0.0 | 0.0 |
1 | 010818SKETV1058 | SKETV | South Ketron/Solo Point | South Sound | South Sound | 47.15243 | -122.6586 | 2018-01-08 | 2018 | 1 | ... | 0.0 | 0.000000 | 0.0 | 0.0 | 0.122849 | 0.0 | 0.011965 | 0.0 | 0.0 | 0.0 |
2 | 011119ELIV1052 | ELIV | Eliza Island | Bellingham Bay | Bellingham Bay | 48.63795 | -122.5694 | 2019-01-11 | 2019 | 1 | ... | 0.0 | 0.000000 | 0.0 | 0.0 | 0.003334 | 0.0 | 0.000000 | 0.0 | 0.0 | 0.0 |
3 | 011315CAMV1330 | CAMV | Camano Head | Whidbey Basin | S Whidbey Basin | 48.05901 | -122.3873 | 2015-01-13 | 2015 | 1 | ... | 0.0 | 0.000000 | 0.0 | 0.0 | 0.000000 | 0.0 | 0.007484 | 0.0 | 0.0 | 0.0 |
4 | 011315MUKV1415 | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | 2015-01-13 | 2015 | 1 | ... | 0.0 | 0.000000 | 0.0 | 0.0 | 0.012628 | 0.0 | 0.000000 | 0.0 | 0.0 | 0.0 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1154 | 121917LSNT01V1000 | LSNT01V | Point Williams | Central Basin | N Central Basin | 47.53333 | -122.4333 | 2017-12-19 | 2017 | 12 | ... | 0.0 | 0.000000 | 0.0 | 0.0 | 0.057153 | 0.0 | 0.000000 | 0.0 | 0.0 | 0.0 |
1155 | 121917NSEX01V1224 | NSEX01V | East Passage | Central Basin | S Central Basin | 47.35862 | -122.3871 | 2017-12-19 | 2017 | 12 | ... | 0.0 | 0.001806 | 0.0 | 0.0 | 0.178813 | 0.0 | 0.006617 | 0.0 | 0.0 | 0.0 |
1156 | 121918TDBV1327 | TDBV | Thorndyke Bay | Hood Canal | N Hood Canal | 47.78297 | -122.7330 | 2018-12-19 | 2018 | 12 | ... | 0.0 | 0.007106 | 0.0 | 0.0 | 0.031724 | 0.0 | 0.000000 | 0.0 | 0.0 | 0.0 |
1157 | 122116LSNT01V1057 | LSNT01V | Point Williams | Central Basin | N Central Basin | 47.53333 | -122.4333 | 2016-12-21 | 2016 | 12 | ... | 0.0 | 0.000000 | 0.0 | 0.0 | 0.070042 | 0.0 | 0.014621 | 0.0 | 0.0 | 0.0 |
1158 | 122116NSEX01V1237 | NSEX01V | East Passage | Central Basin | S Central Basin | 47.35862 | -122.3871 | 2016-12-21 | 2016 | 12 | ... | 0.0 | 0.000000 | 0.0 | 0.0 | 0.132961 | 0.0 | 0.005358 | 0.0 | 0.0 | 0.0 |
1159 rows × 62 columns
biomassDF.keys()
Index(['Key', 'Station', 'Site Name', 'Basin', 'Sub Basin', 'Lat', 'Lon', 'Sample Date', 'Sample Year', 'Sample Month', 'Sample Time', 'Mesh Size', 'Diameter (cm)', 'Station Depth (m)', 'Max Tow Depth (m)', 'Min Tow Depth (m)', 'dtUTC', 'Amphipoda-Hyperiidea', 'Amphipoda-Cyphocarididae', 'Amphipoda-Calliopiidae', 'Amphipoda-Gammaridae', 'Amphipoda', 'Amphipoda-Corophiidae', 'Amphipoda-Caprellidae', 'Copepoda-Calanoida', 'Copepoda-Poecilostomatoida', 'Copepoda-Cyclopoida', 'Copepoda-Monstrilloida', 'Copepoda-Harpacticoida', 'Copepoda-Siphonostomatoida', 'Decapoda-Brachyura-Cancridae', 'Decapoda-Brachyura-Pinnotheridae', 'Decapoda-Anomura-Paguridae', 'Decapoda-Brachyura-Grapsoidea', 'Decapoda-Anomura-Galatheoidea', 'Decapoda-Brachyura-Majoidea', 'Decapoda-Brachyura-Xanthoidea', 'Decapoda-Anomura-Lithoidea', 'Decapoda-Brachyura', 'Decapoda-Brachyura-cheiragonidae', 'Decapoda-Anomura-Porcellanidae', 'Decapoda-Anomura', 'Gastropoda', 'Euphausiidae', 'Euphausiidae-EUPHAUSIA-Nauplii', 'Euphausiidae-Nauplii', 'Euphausiidae-THYSANOESSA-Nauplii', 'Euphausiidae-EUPHAUSIA-Adult', 'Euphausiidae-THYSANOESSA-Adult', 'Euphausiidae-NEMATOSCELIS-Adult', 'Euphausiidae-EUPHAUSIA-Calyptopes', 'Euphausiidae-THYSANOESSA-Calyptopes', 'Euphausiidae-Calyptopes', 'Euphausiidae-EUPHAUSIA-Furcillia', 'Euphausiidae-THYSANOESSA-Furcillia', 'Euphausiidae-Furcillia', 'Chordata-Larvacea', 'Cnidaria-Scyphozoa', 'Cnidaria-Siphonophore-Calycophoran', 'Cnidaria-Siphonophore-Physonect', 'Cnidaria-Siphonophore', 'Chordata-Tunicata'], dtype='object')
biomassDF['Decapoda-Brachyura-Cancridae']
0 0.011072 1 0.020610 2 0.000000 3 0.011896 4 0.021764 ... 1154 0.000000 1155 0.000000 1156 0.000598 1157 0.000000 1158 0.000000 Name: Decapoda-Brachyura-Cancridae, Length: 1159, dtype: float64
import netCDF4 as nc
#ftemp=nc.Dataset('/data/eolson/results/MEOPAR/NEMO-forcing-new/grid/mesh_mask201702.nc')
#ftemp.variables.keys()
#ftemp.variables['e3t_0']
#ftemp.variables['e3t_1d'][:]
fdict={'ptrc_T':1,'grid_T':1}
start_date = dt.datetime(2014,1,1)
end_date = dt.datetime(2016,12,31)
flen=1 # number of days per model output file. always 1 for 201905 and 201812 model runs
namfmt='nowcast' # for 201905 and 201812 model runs, this should always be 'nowcast'
# filemap is dictionary of the form variableName: fileType, where variableName is the name
# of the variable you want to extract and fileType designates the type of
# model output file it can be found in (usually ptrc_T for biology, grid_T for temperature and
# salinity)
filemap={'microzooplankton':'ptrc_T','mesozooplankton':'ptrc_T'}
# fdict is a dictionary mappy file type to its time resolution. Here, 1 means hourly output
# (1h file) and 24 means daily output (1d file). In certain runs, multiple time resolutions
# are available
fdict={'ptrc_T':1,'grid_T':1}
PATH= '/results2/SalishSea/nowcast-green.201905/'
biomassDF.keys()
Index(['Key', 'Station', 'Site Name', 'Basin', 'Sub Basin', 'Lat', 'Lon', 'Sample Date', 'Sample Year', 'Sample Month', 'Sample Time', 'Mesh Size', 'Diameter (cm)', 'Station Depth (m)', 'Max Tow Depth (m)', 'Min Tow Depth (m)', 'dtUTC', 'Amphipoda-Hyperiidea', 'Amphipoda-Cyphocarididae', 'Amphipoda-Calliopiidae', 'Amphipoda-Gammaridae', 'Amphipoda', 'Amphipoda-Corophiidae', 'Amphipoda-Caprellidae', 'Copepoda-Calanoida', 'Copepoda-Poecilostomatoida', 'Copepoda-Cyclopoida', 'Copepoda-Monstrilloida', 'Copepoda-Harpacticoida', 'Copepoda-Siphonostomatoida', 'Decapoda-Brachyura-Cancridae', 'Decapoda-Brachyura-Pinnotheridae', 'Decapoda-Anomura-Paguridae', 'Decapoda-Brachyura-Grapsoidea', 'Decapoda-Anomura-Galatheoidea', 'Decapoda-Brachyura-Majoidea', 'Decapoda-Brachyura-Xanthoidea', 'Decapoda-Anomura-Lithoidea', 'Decapoda-Brachyura', 'Decapoda-Brachyura-cheiragonidae', 'Decapoda-Anomura-Porcellanidae', 'Decapoda-Anomura', 'Gastropoda', 'Euphausiidae', 'Euphausiidae-EUPHAUSIA-Nauplii', 'Euphausiidae-Nauplii', 'Euphausiidae-THYSANOESSA-Nauplii', 'Euphausiidae-EUPHAUSIA-Adult', 'Euphausiidae-THYSANOESSA-Adult', 'Euphausiidae-NEMATOSCELIS-Adult', 'Euphausiidae-EUPHAUSIA-Calyptopes', 'Euphausiidae-THYSANOESSA-Calyptopes', 'Euphausiidae-Calyptopes', 'Euphausiidae-EUPHAUSIA-Furcillia', 'Euphausiidae-THYSANOESSA-Furcillia', 'Euphausiidae-Furcillia', 'Chordata-Larvacea', 'Cnidaria-Scyphozoa', 'Cnidaria-Siphonophore-Calycophoran', 'Cnidaria-Siphonophore-Physonect', 'Cnidaria-Siphonophore', 'Chordata-Tunicata'], dtype='object')
biomassDF.rename(columns={'Max Tow Depth (m)':'Z_lower','Min Tow Depth (m)':'Z_upper','Station Depth (m)':'Z'},inplace=True)
# define log transform function with slight shift to accommodate zero values
def logt(x):
return np.log10(x+.001)
# define inverse log transform with same shift
def logt_inv(y):
return 10**y-.001
test3=np.array([0,0,0,0,1,3,5,10,15,1,1,1,3,1,2])
for a in (1e-6,1e-5,1e-4,1e-3,1e-2,.1,1):
print(a,10**np.mean(np.log10(test3+1))-a)
1e-06 2.5942003176995434 1e-05 2.5941913176995435 0.0001 2.5941013176995433 0.001 2.5932013176995437 0.01 2.5842013176995438 0.1 2.4942013176995435 1 1.5942013176995435
biomassDF['Year']=[ii.year for ii in biomassDF['dtUTC']]
biomassDF['YD']=et.datetimeToYD(biomassDF['dtUTC'])
#CN conversions for mid-level groups
biomassDF['Amphipods']=(biomassDF['Amphipoda-Hyperiidea']+biomassDF['Amphipoda-Cyphocarididae']+biomassDF['Amphipoda-Calliopiidae']+biomassDF['Amphipoda-Gammaridae']+biomassDF['Amphipoda']+biomassDF['Amphipoda-Corophiidae']+biomassDF['Amphipoda-Caprellidae'])/8.5
biomassDF['Crabs']=(biomassDF['Decapoda-Brachyura-Cancridae']+biomassDF['Decapoda-Brachyura-Pinnotheridae']+biomassDF['Decapoda-Anomura-Paguridae']+biomassDF['Decapoda-Brachyura-Grapsoidea']+biomassDF['Decapoda-Anomura-Galatheoidea']+biomassDF['Decapoda-Brachyura-Majoidea']+biomassDF['Decapoda-Brachyura-Xanthoidea']+biomassDF['Decapoda-Anomura-Lithoidea']+biomassDF['Decapoda-Brachyura']+biomassDF['Decapoda-Brachyura-cheiragonidae']+biomassDF['Decapoda-Anomura-Porcellanidae']+biomassDF['Decapoda-Anomura'])/8.5
biomassDF['Euphausiids']=(biomassDF['Euphausiidae']+biomassDF['Euphausiidae-EUPHAUSIA-Nauplii']+biomassDF['Euphausiidae-Nauplii']+biomassDF['Euphausiidae-THYSANOESSA-Nauplii']+biomassDF['Euphausiidae-EUPHAUSIA-Adult']+biomassDF['Euphausiidae-THYSANOESSA-Adult']+biomassDF['Euphausiidae-NEMATOSCELIS-Adult']+biomassDF['Euphausiidae-EUPHAUSIA-Calyptopes']+biomassDF['Euphausiidae-THYSANOESSA-Calyptopes']+biomassDF['Euphausiidae-Calyptopes']+biomassDF['Euphausiidae-EUPHAUSIA-Furcillia']+biomassDF['Euphausiidae-THYSANOESSA-Furcillia']+biomassDF['Euphausiidae-Furcillia'])/8.5
biomassDF['Calanoids']=biomassDF['Copepoda-Calanoida']/8.5
biomassDF['NonCalanoids']=(biomassDF['Copepoda-Poecilostomatoida'])/8.5
biomassDF['Gastropods']=biomassDF['Gastropoda']/8.5
biomassDF['Larvaceans']=biomassDF['Chordata-Larvacea']/8.5
biomassDF['HyperiidAmph']=biomassDF['Amphipoda-Hyperiidea']/8.5
biomassDF['EuphausiidsJuv']=(biomassDF['Euphausiidae-EUPHAUSIA-Calyptopes']+biomassDF['Euphausiidae-THYSANOESSA-Calyptopes']+biomassDF['Euphausiidae-Calyptopes']+biomassDF['Euphausiidae-EUPHAUSIA-Furcillia']+biomassDF['Euphausiidae-THYSANOESSA-Furcillia']+biomassDF['Euphausiidae-Furcillia'])/8.5
biomassDF['Jellies']=(biomassDF['Cnidaria-Scyphozoa']+biomassDF['Cnidaria-Siphonophore-Calycophoran']+biomassDF['Cnidaria-Siphonophore-Physonect']+biomassDF['Cnidaria-Siphonophore'])/8.5
biomassDF['Tunicates']=biomassDF['Chordata-Tunicata']/8.5
biomassDF['Total']=(biomassDF['Amphipoda-Hyperiidea']+biomassDF['Amphipoda-Cyphocarididae']+biomassDF['Amphipoda-Calliopiidae']+biomassDF['Amphipoda-Gammaridae']+biomassDF['Amphipoda']+biomassDF['Amphipoda-Corophiidae']+biomassDF['Amphipoda-Caprellidae']+ \
biomassDF['Decapoda-Brachyura-Cancridae']+biomassDF['Decapoda-Brachyura-Pinnotheridae']+biomassDF['Decapoda-Anomura-Paguridae']+biomassDF['Decapoda-Brachyura-Grapsoidea']+biomassDF['Decapoda-Anomura-Galatheoidea']+biomassDF['Decapoda-Brachyura-Majoidea']+biomassDF['Decapoda-Brachyura-Xanthoidea']+biomassDF['Decapoda-Anomura-Lithoidea']+biomassDF['Decapoda-Brachyura']+biomassDF['Decapoda-Brachyura-cheiragonidae']+biomassDF['Decapoda-Anomura-Porcellanidae']+biomassDF['Decapoda-Anomura']+ \
biomassDF['Euphausiidae']+biomassDF['Euphausiidae-EUPHAUSIA-Nauplii']+biomassDF['Euphausiidae-Nauplii']+biomassDF['Euphausiidae-THYSANOESSA-Nauplii']+biomassDF['Euphausiidae-EUPHAUSIA-Adult']+biomassDF['Euphausiidae-THYSANOESSA-Adult']+biomassDF['Euphausiidae-NEMATOSCELIS-Adult']+biomassDF['Euphausiidae-EUPHAUSIA-Calyptopes']+biomassDF['Euphausiidae-THYSANOESSA-Calyptopes']+biomassDF['Euphausiidae-Calyptopes']+biomassDF['Euphausiidae-EUPHAUSIA-Furcillia']+biomassDF['Euphausiidae-THYSANOESSA-Furcillia']+biomassDF['Euphausiidae-Furcillia']+\
biomassDF['Copepoda-Calanoida']+biomassDF['Copepoda-Poecilostomatoida']+biomassDF['Gastropoda']+biomassDF['Chordata-Larvacea']+\
biomassDF['Cnidaria-Scyphozoa']+biomassDF['Cnidaria-Siphonophore-Calycophoran']+biomassDF['Cnidaria-Siphonophore-Physonect']+biomassDF['Cnidaria-Siphonophore'])/8.5
#+biomassDF['Copepoda-Cyclopoida']+biomassDF['Copepoda-Monstrilloida']+biomassDF['Copepoda-Harpacticoida']+biomassDF['Copepoda-Siphonostomatoida']
biomassDF
Key | Station | Site Name | Basin | Sub Basin | Lat | Lon | Sample Date | Sample Year | Sample Month | ... | Euphausiids | Calanoids | NonCalanoids | Gastropods | Larvaceans | HyperiidAmph | EuphausiidsJuv | Jellies | Tunicates | Total | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 010218ELIV1151 | ELIV | Eliza Island | Bellingham Bay | Bellingham Bay | 48.63795 | -122.5694 | 2018-01-02 | 2018 | 1 | ... | 0.004292 | 0.375024 | 0.019583 | 0.000000 | 0.001192 | 0.004601 | 0.000000 | 0.000000 | 0.0 | 0.444270 |
1 | 010818SKETV1058 | SKETV | South Ketron/Solo Point | South Sound | South Sound | 47.15243 | -122.6586 | 2018-01-08 | 2018 | 1 | ... | 0.000000 | 0.129670 | 0.026537 | 0.029498 | 0.014453 | 0.003771 | 0.000000 | 0.001408 | 0.0 | 0.252033 |
2 | 011119ELIV1052 | ELIV | Eliza Island | Bellingham Bay | Bellingham Bay | 48.63795 | -122.5694 | 2019-01-11 | 2019 | 1 | ... | 0.000000 | 0.510291 | 0.017065 | 0.000204 | 0.000392 | 0.002408 | 0.000000 | 0.000000 | 0.0 | 0.618672 |
3 | 011315CAMV1330 | CAMV | Camano Head | Whidbey Basin | S Whidbey Basin | 48.05901 | -122.3873 | 2015-01-13 | 2015 | 1 | ... | 0.000656 | 0.326055 | 0.002908 | 0.056381 | 0.000000 | 0.009314 | 0.000000 | 0.000880 | 0.0 | 0.436414 |
4 | 011315MUKV1415 | MUKV | Mukilteo | Whidbey Basin | S Whidbey Basin | 47.97166 | -122.3222 | 2015-01-13 | 2015 | 1 | ... | 0.008040 | 0.371331 | 0.015448 | 0.103455 | 0.001486 | 0.022127 | 0.000000 | 0.000000 | 0.0 | 0.675737 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1154 | 121917LSNT01V1000 | LSNT01V | Point Williams | Central Basin | N Central Basin | 47.53333 | -122.4333 | 2017-12-19 | 2017 | 12 | ... | 0.000462 | 0.188989 | 0.047149 | 0.026001 | 0.006724 | 0.012318 | 0.000000 | 0.000000 | 0.0 | 0.391030 |
1155 | 121917NSEX01V1224 | NSEX01V | East Passage | Central Basin | S Central Basin | 47.35862 | -122.3871 | 2017-12-19 | 2017 | 12 | ... | 0.000212 | 0.378846 | 0.095293 | 0.260524 | 0.021037 | 0.021455 | 0.000212 | 0.000779 | 0.0 | 0.873493 |
1156 | 121918TDBV1327 | TDBV | Thorndyke Bay | Hood Canal | N Hood Canal | 47.78297 | -122.7330 | 2018-12-19 | 2018 | 12 | ... | 0.000836 | 0.631083 | 0.036285 | 0.000163 | 0.003732 | 0.014347 | 0.000836 | 0.000000 | 0.0 | 0.704923 |
1157 | 122116LSNT01V1057 | LSNT01V | Point Williams | Central Basin | N Central Basin | 47.53333 | -122.4333 | 2016-12-21 | 2016 | 12 | ... | 0.000000 | 0.340767 | 0.024335 | 0.069083 | 0.008240 | 0.019277 | 0.000000 | 0.001720 | 0.0 | 0.516747 |
1158 | 122116NSEX01V1237 | NSEX01V | East Passage | Central Basin | S Central Basin | 47.35862 | -122.3871 | 2016-12-21 | 2016 | 12 | ... | 0.006156 | 0.235630 | 0.017414 | 0.239483 | 0.015643 | 0.005761 | 0.000000 | 0.000630 | 0.0 | 0.660677 |
1159 rows × 76 columns
biomassDF.keys()
Index(['Key', 'Station', 'Site Name', 'Basin', 'Sub Basin', 'Lat', 'Lon', 'Sample Date', 'Sample Year', 'Sample Month', 'Sample Time', 'Mesh Size', 'Diameter (cm)', 'Z', 'Z_lower', 'Z_upper', 'dtUTC', 'Amphipoda-Hyperiidea', 'Amphipoda-Cyphocarididae', 'Amphipoda-Calliopiidae', 'Amphipoda-Gammaridae', 'Amphipoda', 'Amphipoda-Corophiidae', 'Amphipoda-Caprellidae', 'Copepoda-Calanoida', 'Copepoda-Poecilostomatoida', 'Copepoda-Cyclopoida', 'Copepoda-Monstrilloida', 'Copepoda-Harpacticoida', 'Copepoda-Siphonostomatoida', 'Decapoda-Brachyura-Cancridae', 'Decapoda-Brachyura-Pinnotheridae', 'Decapoda-Anomura-Paguridae', 'Decapoda-Brachyura-Grapsoidea', 'Decapoda-Anomura-Galatheoidea', 'Decapoda-Brachyura-Majoidea', 'Decapoda-Brachyura-Xanthoidea', 'Decapoda-Anomura-Lithoidea', 'Decapoda-Brachyura', 'Decapoda-Brachyura-cheiragonidae', 'Decapoda-Anomura-Porcellanidae', 'Decapoda-Anomura', 'Gastropoda', 'Euphausiidae', 'Euphausiidae-EUPHAUSIA-Nauplii', 'Euphausiidae-Nauplii', 'Euphausiidae-THYSANOESSA-Nauplii', 'Euphausiidae-EUPHAUSIA-Adult', 'Euphausiidae-THYSANOESSA-Adult', 'Euphausiidae-NEMATOSCELIS-Adult', 'Euphausiidae-EUPHAUSIA-Calyptopes', 'Euphausiidae-THYSANOESSA-Calyptopes', 'Euphausiidae-Calyptopes', 'Euphausiidae-EUPHAUSIA-Furcillia', 'Euphausiidae-THYSANOESSA-Furcillia', 'Euphausiidae-Furcillia', 'Chordata-Larvacea', 'Cnidaria-Scyphozoa', 'Cnidaria-Siphonophore-Calycophoran', 'Cnidaria-Siphonophore-Physonect', 'Cnidaria-Siphonophore', 'Chordata-Tunicata', 'Year', 'YD', 'Amphipods', 'Crabs', 'Euphausiids', 'Calanoids', 'NonCalanoids', 'Gastropods', 'Larvaceans', 'HyperiidAmph', 'EuphausiidsJuv', 'Jellies', 'Tunicates', 'Total'], dtype='object')
biomassDF['Sample Month'][1000:1200]
1000 10 1001 10 1002 10 1003 10 1004 10 .. 1154 12 1155 12 1156 12 1157 12 1158 12 Name: Sample Month, Length: 159, dtype: int64
print(len(df),'data points')
print('Mean values per month by basin:')
biomassDF.groupby(['Basin','Sample Month']).mean()
81587 data points Mean values per month by basin:
Lat | Lon | Sample Year | Mesh Size | Diameter (cm) | Z | Z_lower | Z_upper | Amphipoda-Hyperiidea | Amphipoda-Cyphocarididae | ... | Euphausiids | Calanoids | NonCalanoids | Gastropods | Larvaceans | HyperiidAmph | EuphausiidsJuv | Jellies | Tunicates | Total | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Basin | Sample Month | |||||||||||||||||||||
Admiralty Inlet | 1 | 48.002730 | -122.636000 | 2018.500000 | 200.0 | 60.0 | 127.500000 | 112.500000 | 0.0 | 0.068428 | 0.366462 | ... | 0.129874 | 0.592499 | 0.009565 | 0.015369 | 0.002113 | 0.008050 | 0.000086 | 0.000000 | 0.000000 | 0.805615 |
2 | 48.002730 | -122.636000 | 2018.666667 | 200.0 | 60.0 | 127.333333 | 108.000000 | 0.0 | 0.149914 | 0.123580 | ... | 0.025843 | 0.443700 | 0.005510 | 0.032120 | 0.002341 | 0.017637 | 0.000000 | 0.000000 | 0.000000 | 0.553720 | |
3 | 48.002730 | -122.636000 | 2016.857143 | 200.0 | 60.0 | 123.285714 | 115.714286 | 0.0 | 0.063749 | 0.060303 | ... | 0.058464 | 0.804039 | 0.017117 | 0.102259 | 0.068770 | 0.007500 | 0.037644 | 0.000468 | 0.000000 | 1.464261 | |
4 | 48.002730 | -122.636000 | 2017.000000 | 200.0 | 60.0 | 125.000000 | 115.125000 | 0.0 | 0.091578 | 0.100046 | ... | 0.116482 | 1.791811 | 0.022842 | 0.090444 | 0.059519 | 0.010774 | 0.114000 | 0.000260 | 0.000000 | 2.414157 | |
5 | 48.002730 | -122.636000 | 2016.363636 | 200.0 | 60.0 | 123.063636 | 113.727273 | 0.0 | 1.230561 | 0.106258 | ... | 0.115418 | 2.721170 | 0.161041 | 0.117341 | 0.093221 | 0.144772 | 0.106803 | 0.000656 | 0.000000 | 7.037134 | |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
Whidbey Basin | 8 | 48.105715 | -122.417072 | 2016.827586 | 200.0 | 60.0 | 152.017241 | 144.827586 | 0.0 | 0.616324 | 5.889347 | ... | 0.043426 | 1.217126 | 0.124648 | 0.330944 | 0.071258 | 0.072509 | 0.018164 | 0.028761 | 0.001283 | 2.620538 |
9 | 48.167176 | -122.456579 | 2016.666667 | 200.0 | 60.0 | 129.329167 | 120.583333 | 0.0 | 0.242517 | 3.342096 | ... | 0.063043 | 1.114140 | 0.120725 | 0.259831 | 0.104822 | 0.028531 | 0.015356 | 0.026761 | 0.002494 | 2.131343 | |
10 | 48.068845 | -122.389336 | 2017.636364 | 200.0 | 60.0 | 168.581818 | 158.727273 | 0.0 | 0.133593 | 4.786002 | ... | 0.009953 | 1.225630 | 0.106814 | 0.134034 | 0.045734 | 0.015717 | 0.002946 | 0.012287 | 0.000153 | 2.123320 | |
11 | 48.000777 | -122.343900 | 2017.333333 | 200.0 | 60.0 | 190.666667 | 184.000000 | 0.0 | 0.073500 | 3.057175 | ... | 0.001545 | 0.811909 | 0.100365 | 0.072512 | 0.008817 | 0.008647 | 0.000000 | 0.002816 | 0.000000 | 1.375131 | |
12 | 48.029893 | -122.365600 | 2016.500000 | 200.0 | 60.0 | 184.666667 | 177.666667 | 0.0 | 0.072564 | 2.801087 | ... | 0.000043 | 1.021259 | 0.026652 | 0.068770 | 0.007935 | 0.008537 | 0.000000 | 0.001053 | 0.000000 | 1.467520 |
81 rows × 67 columns
monthsFmt = mdates.DateFormatter('%b')
data=et.matchData(biomassDF,filemap,fdict,start_date,end_date,'nowcast',PATH,1,quiet=False,method='vertNet');
Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-03-25 17:35:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-03-25 17:35:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-04-09 16:25:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-04-09 16:25:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-04-09 18:38:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-04-09 18:38:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-04-22 18:57:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-04-22 18:57:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-04-22 21:20:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-04-22 21:20:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=20, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-04-25 19:15:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=20, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-04-25 19:15:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-05-01 01:10:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-05-01 01:10:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-05-07 17:05:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-05-07 17:05:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-05-14 19:20:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-05-14 19:20:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-05-16 02:00:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-05-16 02:00:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-05-16 19:12:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-05-16 19:12:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-05-19 16:35:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-05-19 16:35:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-05-22 21:40:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-05-22 21:40:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-05-29 22:03:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-05-29 22:03:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-06-01 02:45:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-06-01 02:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-06-04 16:26:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-06-04 16:26:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-06-06 20:15:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-06-06 20:15:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-06-13 01:25:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-06-13 01:25:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-06-17 17:25:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-06-17 17:25:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-06-19 17:40:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-06-19 17:40:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-06-19 20:40:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-06-19 20:40:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-06-24 18:47:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-06-24 18:47:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-06-25 22:03:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-06-25 22:03:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=24, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-06-27 02:30:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=24, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-06-27 02:30:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-07-07 17:05:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-07-07 17:05:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-07-08 20:55:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-07-08 20:55:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-07-14 18:36:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-07-14 18:36:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2014-07-17 18:15:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2014-07-17 18:15:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=23, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-07-18 18:30:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=23, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-07-18 18:30:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-07-21 16:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-07-21 16:45:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-07-25 19:52:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-07-25 19:52:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-07-27 00:55:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-07-27 00:55:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=27, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-07-29 19:25:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=27, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-07-29 19:25:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-08-04 18:40:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-08-04 18:40:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-08-15 01:15:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-08-15 01:15:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-08-15 21:11:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-08-15 21:11:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-08-18 16:30:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-08-18 16:30:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2014-08-18 18:05:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2014-08-18 18:05:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-08-19 18:15:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-08-19 18:15:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=24, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-08-20 18:45:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=24, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-08-20 18:45:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-08-29 19:00:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-08-29 19:00:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-08-31 00:40:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-08-31 00:40:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=29, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-09-04 19:17:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=29, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-09-04 19:17:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-09-08 16:40:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-09-08 16:40:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-09-12 01:16:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2014-09-12 01:16:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-09-12 19:50:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-09-12 19:50:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-09-18 17:25:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2014-09-18 17:25:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-09-22 16:50:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-09-22 16:50:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=28, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-09-25 19:12:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=28, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2014-09-25 19:12:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-10-06 16:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-10-06 16:45:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-10-08 20:06:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2014-10-08 20:06:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-10-20 16:40:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-10-20 16:40:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=29, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2014-10-30 16:49:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=29, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2014-10-30 16:49:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-11-03 18:00:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-11-03 18:00:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-11-17 18:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-11-17 18:45:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2014-12-02 19:11:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2014-12-02 19:11:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2014-12-02 22:40:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2014-12-02 22:40:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-12-15 17:47:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2014-12-15 17:47:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-01-13 21:30:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-01-13 21:30:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-01-13 22:15:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-01-13 22:15:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-01-20 17:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-01-20 17:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-02-02 16:52:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-02-02 16:52:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-02-17 17:55:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-02-17 17:55:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-03-02 18:00:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-03-02 18:00:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-03-10 20:29:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-03-10 20:29:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-03-18 18:20:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-03-18 18:20:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-03-20 18:35:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-03-20 18:35:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-03-20 19:46:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-03-20 19:46:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-03-23 16:30:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-03-23 16:30:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-03-27 20:15:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-03-27 20:15:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-04-02 18:27:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-04-02 18:27:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-04-04 23:35:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-04-04 23:35:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-04-06 16:20:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-04-06 16:20:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-04-07 18:58:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-04-07 18:58:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-04-07 20:03:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-04-07 20:03:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-04-15 19:49:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-04-15 19:49:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-04-15 20:47:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-04-15 20:47:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-04-20 17:42:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-04-20 17:42:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=24, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-04-21 20:25:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=24, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-04-21 20:25:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-04-29 21:59:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-04-29 21:59:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-05-04 16:41:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-05-04 16:41:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-05-06 19:00:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-05-06 19:00:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-05-06 20:05:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-05-06 20:05:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-05-11 23:01:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-05-11 23:01:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-05-13 18:59:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-05-13 18:59:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-05-14 20:17:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-05-14 20:17:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-05-17 01:05:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-05-17 01:05:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-05-18 17:00:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-05-18 17:00:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-05-21 18:39:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-05-21 18:39:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-05-21 19:40:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-05-21 19:40:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-05-26 18:10:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-05-26 18:10:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=21, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-05-27 22:49:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=21, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-05-27 22:49:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-05-28 20:00:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-05-28 20:00:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-05-31 02:30:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-05-31 02:30:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-06-02 16:08:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-06-02 16:08:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-06-08 18:03:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-06-08 18:03:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-06-08 18:45:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-06-08 18:45:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-06-10 18:22:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-06-10 18:22:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-06-14 02:25:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-06-14 02:25:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-06-16 16:35:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-06-16 16:35:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-06-17 21:05:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-06-17 21:05:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-06-18 19:53:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-06-18 19:53:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-06-23 17:15:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-06-23 17:15:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-06-23 19:19:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-06-23 19:19:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-06-25 18:04:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-06-25 18:04:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-06-26 18:32:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-06-26 18:32:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-06-28 01:10:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-06-28 01:10:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-07-01 20:09:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-07-01 20:09:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-07-01 20:34:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-07-01 20:34:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-07-06 17:00:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-07-06 17:00:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-07-09 17:59:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-07-09 17:59:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-07-09 18:42:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-07-09 18:42:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-07-09 19:49:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-07-09 19:49:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=24, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-07-13 02:00:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=24, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-07-13 02:00:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-07-13 20:37:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-07-13 20:37:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-07-15 20:32:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-07-15 20:32:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-07-20 16:27:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-07-20 16:27:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-07-22 17:34:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-07-22 17:34:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2015-07-23 19:05:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2015-07-23 19:05:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=23, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-07-27 19:12:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=23, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-07-27 19:12:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-07-30 18:53:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-07-30 18:53:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-07-30 19:58:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-07-30 19:58:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-08-01 03:00:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-08-01 03:00:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-08-03 19:18:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-08-03 19:18:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-08-04 17:57:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-08-04 17:57:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-08-04 20:47:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-08-04 20:47:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-08-06 18:18:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-08-06 18:18:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-08-13 18:21:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-08-13 18:21:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-08-13 19:21:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-08-13 19:21:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-08-16 01:55:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-08-16 01:55:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-08-17 21:47:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-08-17 21:47:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-08-18 18:03:00 Warning: lower limit is not an ocean value: i=126, j=22, k_upper=0, k_lower=23, k_seafloor=23 Lon=-122.8307, Lat=47.18327, dtUTC=2015-08-18 18:03:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-08-20 20:32:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-08-20 20:32:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-08-24 18:10:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-08-24 18:10:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=29, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-08-26 18:16:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=29, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-08-26 18:16:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-08-26 18:18:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-08-26 18:18:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-08-26 19:55:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-08-26 19:55:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-09-01 00:40:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=23, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2015-09-01 00:40:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-09-08 16:22:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-09-08 16:22:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-09-09 19:00:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-09-09 19:00:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-09-09 21:44:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-09-09 21:44:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-09-10 18:50:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-09-10 18:50:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-09-10 20:25:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-09-10 20:25:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-09-14 16:23:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-09-14 16:23:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-09-21 16:40:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-09-21 16:40:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2015-09-21 18:05:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2015-09-21 18:05:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-09-22 17:49:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2015-09-22 17:49:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-09-24 19:15:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2015-09-24 19:15:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=29, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-09-30 18:27:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=29, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2015-09-30 18:27:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-09-30 20:51:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=29, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2015-09-30 20:51:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-10-02 20:00:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-10-02 20:00:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-10-05 16:42:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-10-05 16:42:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-10-19 16:14:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-10-19 16:14:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-10-21 20:04:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2015-10-21 20:04:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-11-02 17:10:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-11-02 17:10:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-11-19 16:25:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-11-19 16:25:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-12-14 17:22:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2015-12-14 17:22:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-01-19 17:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-01-19 17:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-02-01 17:15:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-02-01 17:15:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-02-16 17:02:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-02-16 17:02:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-03-09 17:22:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-03-09 17:22:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-03-15 20:53:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-03-15 20:53:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-03-15 21:30:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-03-15 21:30:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-03-18 16:18:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-03-18 16:18:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-03-21 16:54:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-03-21 16:54:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-03-22 20:49:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-03-22 20:49:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-03-29 17:16:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-03-29 17:16:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-03-29 18:44:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-03-29 18:44:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-03-30 22:55:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-03-30 22:55:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-04-06 16:09:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-04-06 16:09:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-04-06 18:29:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-04-06 18:29:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-04-07 00:17:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-04-07 00:17:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-04-18 16:36:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-04-18 16:36:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-04-18 17:51:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-04-18 17:51:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-04-18 18:55:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-04-18 18:55:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-04-20 20:07:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-04-20 20:07:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=20, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-04-21 00:37:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=20, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-04-21 00:37:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-05-02 15:57:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-05-02 15:57:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-05-03 16:12:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-05-03 16:12:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-05-04 17:37:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-05-04 17:37:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-05-07 01:44:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-05-07 01:44:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-05-11 15:12:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-05-11 15:12:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-05-16 15:57:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-05-16 15:57:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-05-19 20:10:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-05-19 20:10:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-05-21 02:04:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-05-21 02:04:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-05-25 18:02:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-05-25 18:02:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-05-25 19:02:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-05-25 19:02:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-05-27 15:24:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-05-27 15:24:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-06-02 21:00:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-06-02 21:00:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=20, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-06-05 01:02:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=20, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-06-05 01:02:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-06-06 16:13:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-06-06 16:13:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-06-09 19:34:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-06-09 19:34:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-06-13 18:31:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-06-13 18:31:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-06-15 22:36:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-06-15 22:36:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-06-18 01:56:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-06-18 01:56:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-06-20 16:45:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-06-20 16:45:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-06-29 17:25:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-06-29 17:25:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-06-29 18:46:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-06-29 18:46:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2016-06-29 21:34:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2016-06-29 21:34:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-06-30 19:44:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-06-30 19:44:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-07-01 20:39:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-07-01 20:39:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-07-04 02:41:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-07-04 02:41:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-07-05 15:44:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-07-05 15:44:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-07-14 17:28:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-07-14 17:28:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-07-14 18:37:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-07-14 18:37:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-07-14 20:44:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-07-14 20:44:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2016-07-14 20:55:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2016-07-14 20:55:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-07-15 20:05:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-07-15 20:05:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-07-18 01:54:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-07-18 01:54:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-07-18 16:05:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-07-18 16:05:00 Warning: lower limit is not an ocean value: i=118, j=70, k_upper=0, k_lower=23, k_seafloor=23 Lon=-123.0249, Lat=47.3562, dtUTC=2016-07-21 20:11:00 Warning: lower limit is not an ocean value: i=118, j=70, k_upper=0, k_lower=23, k_seafloor=23 Lon=-123.0249, Lat=47.3562, dtUTC=2016-07-21 20:11:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-07-27 21:08:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-07-27 21:08:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-08-01 02:23:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-08-01 02:23:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-08-01 16:02:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-08-01 16:02:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-08-03 20:27:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-08-03 20:27:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-08-09 17:28:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-08-09 17:28:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-08-10 18:30:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-08-10 18:30:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-08-10 19:31:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-08-10 19:31:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-08-15 15:46:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-08-15 15:46:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=25, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-08-19 02:46:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=25, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-08-19 02:46:00 Warning: lower limit is not an ocean value: i=284, j=262, k_upper=0, k_lower=25, k_seafloor=24 Lon=-122.7929, Lat=48.43548, dtUTC=2016-08-19 03:21:00 Warning: lower limit is not an ocean value: i=284, j=262, k_upper=0, k_lower=25, k_seafloor=24 Lon=-122.7929, Lat=48.43548, dtUTC=2016-08-19 03:21:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-08-25 17:49:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-08-25 17:49:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-08-26 18:23:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-08-26 18:23:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-08-31 17:50:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-08-31 17:50:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-08-31 18:51:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-08-31 18:51:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-09-04 01:46:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-09-04 01:46:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-09-06 15:33:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-09-06 15:33:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-09-08 18:41:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-09-08 18:41:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-09-09 18:12:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-09-09 18:12:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-09-18 21:38:00 Warning: lower limit is not an ocean value: i=282, j=263, k_upper=0, k_lower=21, k_seafloor=18 Lon=-122.8037, Lat=48.43457, dtUTC=2016-09-18 21:38:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-09-19 15:48:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-09-19 15:48:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2016-09-20 18:45:00 Warning: lower limit is not an ocean value: i=298, j=210, k_upper=0, k_lower=25, k_seafloor=25 Lon=-122.5442, Lat=48.25673, dtUTC=2016-09-20 18:45:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2016-09-22 16:30:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=22, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2016-09-22 16:30:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-09-22 17:31:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-09-22 17:31:00 Warning: lower limit is not an ocean value: i=118, j=70, k_upper=0, k_lower=23, k_seafloor=23 Lon=-123.0249, Lat=47.3562, dtUTC=2016-09-26 20:59:00 Warning: lower limit is not an ocean value: i=118, j=70, k_upper=0, k_lower=23, k_seafloor=23 Lon=-123.0249, Lat=47.3562, dtUTC=2016-09-26 20:59:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-09-28 18:31:00 Warning: lower limit is not an ocean value: i=296, j=140, k_upper=0, k_lower=30, k_seafloor=29 Lon=-122.3222, Lat=47.97166, dtUTC=2016-09-28 18:31:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-09-28 19:21:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-09-28 19:21:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-09-29 20:56:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-09-29 20:56:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-10-03 16:13:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-10-03 16:13:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-10-11 22:37:00 Warning: lower limit is not an ocean value: i=342, j=285, k_upper=0, k_lower=27, k_seafloor=26 Lon=-122.5694, Lat=48.63795, dtUTC=2016-10-11 22:37:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-10-17 15:47:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-10-17 15:47:00 Warning: lower limit is not an ocean value: i=118, j=70, k_upper=0, k_lower=23, k_seafloor=23 Lon=-123.0249, Lat=47.3562, dtUTC=2016-10-20 21:05:00 Warning: lower limit is not an ocean value: i=118, j=70, k_upper=0, k_lower=23, k_seafloor=23 Lon=-123.0249, Lat=47.3562, dtUTC=2016-10-20 21:05:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-10-21 18:34:00 Warning: lower limit is not an ocean value: i=213, j=132, k_upper=0, k_lower=26, k_seafloor=26 Lon=-122.733, Lat=47.78297, dtUTC=2016-10-21 18:34:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=23, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2016-10-27 00:07:00 Warning: lower limit is not an ocean value: i=312, j=241, k_upper=0, k_lower=23, k_seafloor=20 Lon=-122.5783, Lat=48.40622, dtUTC=2016-10-27 00:07:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-11-07 19:10:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-11-07 19:10:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-11-21 16:41:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-11-21 16:41:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-12-03 20:00:00 Warning: lower limit is not an ocean value: i=297, j=161, k_upper=0, k_lower=30, k_seafloor=26 Lon=-122.3873, Lat=48.05901, dtUTC=2016-12-03 20:00:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-12-19 21:33:00 Warning: lower limit is not an ocean value: i=252, j=103, k_upper=0, k_lower=30, k_seafloor=30 Lon=-122.4282, Lat=47.74396, dtUTC=2016-12-19 21:33:00
##L10 for mid-level groups
data['L10Amphipods']=logt(data['Amphipoda'])
data['L10Euphausiids']=logt(data['Euphausiids'])
data['L10Crabs']=logt(data['Crabs'])
data['L10Calanoids']=logt(data['Calanoids'])
data['L10Gastropods']=logt(data['Gastropods'])
data['L10Larvaceans']=logt(data['Larvaceans'])
data['L10EuphausiidsJuv']=logt(data['EuphausiidsJuv'])
data['L10HyperiidAmph']=logt(data['HyperiidAmph'])
data['L10NonCalanoids']=logt(data['NonCalanoids'])
data['L10Jellies']=logt(data['Jellies'])
data['L10Tunicates']=logt(data['Tunicates'])
data['L10Total']=logt(data['Total'])
data['L10mod_microzooplankton']=logt(data['mod_microzooplankton'])
data['L10mod_mesozooplankton']=logt(data['mod_mesozooplankton'])
##L10 for mid-level groups adults only
data
Key | Station | Site Name | Basin | Sub Basin | Lat | Lon | Sample Date | Sample Year | Sample Month | ... | L10Gastropods | L10Larvaceans | L10EuphausiidsJuv | L10HyperiidAmph | L10NonCalanoids | L10Jellies | L10Tunicates | L10Total | L10mod_microzooplankton | L10mod_mesozooplankton | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 032514DANAV1035 | DANAV | Dana Passage | South Sound | South Sound | 47.18327 | -122.8307 | 2014-03-25 | 2014 | 3 | ... | -1.963590 | -1.759306 | -3.000000 | -3.000000 | -1.813082 | -1.927517 | -3.000000 | -0.938520 | -0.636064 | -0.203705 |
1 | 040114sketv1001 | SKETV | South Ketron/Solo Point | South Sound | South Sound | 47.15243 | -122.6586 | 2014-04-01 | 2014 | 4 | ... | -1.390759 | -1.454509 | -3.000000 | -2.419121 | -1.236035 | -1.954179 | -3.000000 | -0.474971 | -0.553034 | -0.345361 |
2 | 040414ADIV1300 | ADIV | Admiralty Inlet | Admiralty Inlet | Admiralty Inlet | 48.00273 | -122.6360 | 2014-04-04 | 2014 | 4 | ... | -0.768568 | -1.338911 | -3.000000 | -2.288450 | -2.167170 | -3.000000 | -3.000000 | 0.143507 | -0.334718 | -0.191273 |
3 | 040914ksbp010925 | KSBP01V | Point Jefferson | Central Basin | N Central Basin | 47.74396 | -122.4282 | 2014-04-09 | 2014 | 4 | ... | -0.867468 | -0.846542 | -2.548761 | -1.611418 | -1.625231 | -3.000000 | -2.248787 | -0.101888 | -0.484170 | -0.286597 |
4 | 040914lsnt01v1055 | LSNT01V | Point Williams | Central Basin | N Central Basin | 47.53333 | -122.4333 | 2014-04-09 | 2014 | 4 | ... | -1.798123 | -0.933799 | -3.000000 | -2.920209 | -1.637045 | -2.677876 | -3.000000 | -0.336873 | -0.793377 | -0.527014 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
481 | 112216NSEX01V1304 | NSEX01V | East Passage | Central Basin | S Central Basin | 47.35862 | -122.3871 | 2016-11-22 | 2016 | 11 | ... | -0.451538 | -1.187045 | -2.722048 | -1.354277 | -0.996189 | -2.496160 | -3.000000 | -0.035765 | -1.384651 | -0.436282 |
482 | 120316CAMV1200 | CAMV | Camano Head | Whidbey Basin | S Whidbey Basin | 48.05901 | -122.3873 | 2016-12-03 | 2016 | 12 | ... | -0.977361 | -2.263196 | -3.000000 | -1.995497 | -1.981796 | -2.683351 | -3.000000 | -0.107101 | -1.338045 | -0.379005 |
483 | 121916KSBP01V1333 | KSBP01V | Point Jefferson | Central Basin | N Central Basin | 47.74396 | -122.4282 | 2016-12-19 | 2016 | 12 | ... | -0.992101 | -2.178450 | -3.000000 | -1.234803 | -1.659473 | -3.000000 | -3.000000 | 0.154170 | -1.500627 | -0.530506 |
484 | 122116LSNT01V1057 | LSNT01V | Point Williams | Central Basin | N Central Basin | 47.53333 | -122.4333 | 2016-12-21 | 2016 | 12 | ... | -1.154389 | -2.034319 | -3.000000 | -1.692999 | -1.596273 | -2.565419 | -3.000000 | -0.285882 | -1.574982 | -0.640508 |
485 | 122116NSEX01V1237 | NSEX01V | East Passage | Central Basin | S Central Basin | 47.35862 | -122.3871 | 2016-12-21 | 2016 | 12 | ... | -0.618915 | -1.778781 | -3.000000 | -2.169966 | -1.734852 | -2.787728 | -3.000000 | -0.179354 | -1.566102 | -0.638187 |
486 rows × 96 columns
testmean=data.groupby(['Sample Month']).mean()
testsem=data.groupby(['Sample Month']).sem()
testmean
Lat | Lon | Sample Year | Mesh Size | Diameter (cm) | Z | Z_lower | Z_upper | Amphipoda-Hyperiidea | Amphipoda-Cyphocarididae | ... | L10Gastropods | L10Larvaceans | L10EuphausiidsJuv | L10HyperiidAmph | L10NonCalanoids | L10Jellies | L10Tunicates | L10Total | L10mod_microzooplankton | L10mod_mesozooplankton | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Sample Month | |||||||||||||||||||||
1 | 47.662811 | -122.400838 | 2015.375000 | 200.0 | 60.000000 | 214.000000 | 187.500000 | 0.0 | 0.201491 | 1.030582 | ... | -1.068236 | -2.276314 | -2.990741 | -1.680304 | -1.788524 | -2.787337 | -3.000000 | -0.071158 | -1.562488 | -0.616619 |
2 | 47.545303 | -122.416200 | 2015.500000 | 200.0 | 60.000000 | 221.666667 | 190.000000 | 0.0 | 0.395103 | 1.239294 | ... | -1.205059 | -2.197000 | -3.000000 | -1.550350 | -1.966319 | -2.968229 | -3.000000 | -0.176019 | -1.498549 | -0.645369 |
3 | 47.741491 | -122.534016 | 2015.516129 | 200.0 | 60.000000 | 163.383871 | 148.032258 | 0.0 | 0.116852 | 0.456340 | ... | -1.238079 | -1.605854 | -2.363406 | -2.132281 | -1.677756 | -2.708622 | -2.918808 | -0.190426 | -0.808475 | -0.431088 |
4 | 47.827474 | -122.561528 | 2015.063830 | 200.0 | 59.361702 | 151.223830 | 133.787234 | 0.0 | 0.312885 | 0.368899 | ... | -1.165122 | -1.188293 | -1.898653 | -2.192522 | -1.402973 | -2.537302 | -2.984017 | 0.049813 | -0.543906 | -0.249344 |
5 | 47.902535 | -122.601980 | 2015.046875 | 200.0 | 59.531250 | 140.292906 | 125.093750 | 0.0 | 0.446055 | 0.787286 | ... | -0.897375 | -1.349259 | -1.578043 | -1.836711 | -1.031549 | -2.225227 | -2.987658 | 0.293324 | -0.571678 | -0.118078 |
6 | 47.924064 | -122.627632 | 2015.030769 | 200.0 | 59.538462 | 134.634769 | 121.630769 | 0.0 | 0.729695 | 0.940414 | ... | -0.851987 | -1.182542 | -2.171991 | -1.576642 | -0.862115 | -2.070806 | -2.916647 | 0.197823 | -0.504776 | -0.142304 |
7 | 47.877797 | -122.619903 | 2015.045455 | 200.0 | 60.000000 | 134.863788 | 124.393939 | 0.0 | 0.961754 | 1.283190 | ... | -0.572321 | -1.189754 | -2.202326 | -1.585115 | -0.820936 | -1.986453 | -2.978555 | 0.340145 | -0.526707 | -0.191426 |
8 | 47.909050 | -122.602115 | 2015.102941 | 200.0 | 60.000000 | 137.324412 | 125.235294 | 0.0 | 0.871581 | 1.786725 | ... | -0.558955 | -1.327083 | -2.104994 | -1.594663 | -0.746934 | -2.147874 | -2.946361 | 0.294895 | -0.571960 | -0.210450 |
9 | 47.874174 | -122.608813 | 2015.158730 | 200.0 | 60.000000 | 135.982603 | 125.333333 | 0.0 | 0.638771 | 1.739551 | ... | -0.635785 | -1.426287 | -2.310343 | -1.612528 | -0.834343 | -2.061648 | -2.916899 | 0.223613 | -0.736635 | -0.138506 |
10 | 47.688143 | -122.535331 | 2015.125000 | 200.0 | 60.000000 | 175.281250 | 153.750000 | 0.0 | 0.564012 | 0.729872 | ... | -0.718354 | -1.740168 | -2.241244 | -1.484790 | -0.967166 | -2.207761 | -2.890430 | 0.040892 | -0.960298 | -0.131159 |
11 | 47.525856 | -122.438278 | 2015.055556 | 200.0 | 60.000000 | 213.574444 | 180.555556 | 0.0 | 0.304593 | 1.492369 | ... | -0.739128 | -1.848242 | -2.753627 | -1.583637 | -1.188367 | -2.436426 | -2.969314 | -0.023799 | -1.240896 | -0.345135 |
12 | 47.666451 | -122.403550 | 2014.916667 | 200.0 | 60.000000 | 213.750000 | 187.583333 | 0.0 | 0.313695 | 1.556888 | ... | -0.890417 | -2.023904 | -2.995699 | -1.617466 | -1.602192 | -2.526959 | -3.000000 | -0.012034 | -1.451460 | -0.520892 |
12 rows × 87 columns
meanmonthCala=data.groupby(['Calanoids'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthEuph=data.groupby(['Euphausiids'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthAmph=data.groupby(['Amphipods'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthCrab=data.groupby(['Crabs'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthNonCala=data.groupby(['NonCalanoids'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLarv=data.groupby(['Larvaceans'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthGast=data.groupby(['Gastropods'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthJellies=data.groupby(['Jellies'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthTotal=data.groupby(['Total'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthModMicro=data.groupby(['mod_microzooplankton'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthModMeso=data.groupby(['mod_mesozooplankton'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogCala=data.groupby(['L10Calanoids'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogEuph=data.groupby(['L10Euphausiids'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogAmph=data.groupby(['L10Amphipods'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogCrab=data.groupby(['L10Crabs'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogNonCala=data.groupby(['L10NonCalanoids'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogLarv=data.groupby(['L10Larvaceans'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogGast=data.groupby(['L10Gastropods'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogJellies=data.groupby(['L10Jellies'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogTotal=data.groupby(['L10Total'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogModMicro=data.groupby(['L10mod_microzooplankton'], as_index=False).mean().groupby(['Sample Month']).mean()
meanmonthLogModMeso=data.groupby(['L10mod_mesozooplankton'], as_index=False).mean().groupby(['Sample Month']).mean()
geomeanCala=gmean(meanmonthCala.loc[:,'Calanoids'])
geomeanCala
0.7449109049870318
fig,ax=plt.subplots(1,4,figsize=(20,5))
fig.suptitle('Puget Sound', fontsize=24)
fig.subplots_adjust(top=0.8)
ax[0].plot(10**(meanmonthLogCala['L10Calanoids']),'r-')
ax[0].plot(10**(test['L10Calanoids']-.001),'b--')
ax[1].plot(10**(meanmonthLogEuph['L10Euphausiids']),'r-')
ax[1].plot(10**(test['L10Euphausiids']-.001),'b--')
ax[2].plot(10**(meanmonthLogAmph['L10Amphipods']),'r--')
ax[3].plot(10**(meanmonthLogCrab['L10Crabs']),'r--')
ax[0].set_title('Calanoid Seasonal Cycle')
ax[1].set_title('Euphausiid Seasonal Cycle')
ax[2].set_title('Amphipod Seasonal Cycle')
ax[3].set_title('Decapod Seasonal Cycle')
ax[0].set_ylabel('Mean Biomass ($\mu$M N)')
ax[0].set_xlim(0,12)
ax[1].set_xlim(0,12)
ax[2].set_xlim(0,12)
ax[3].set_xlim(0,12)
ax[0].set_ylim(0,1.5)
ax[1].set_ylim(0,1.5)
ax[2].set_ylim(0,1.5)
ax[3].set_ylim(0,1.5)
fig,ax=plt.subplots(1,4,figsize=(20,5))
ax[0].plot(10**(meanmonthLogNonCala['L10NonCalanoids']),'r--')
ax[1].plot(10**(meanmonthLogLarv['L10Larvaceans']),'r--')
ax[2].plot(10**(meanmonthGast['L10Gastropods']),'r--')
ax[3].plot(10**(meanmonthLogJellies['L10Jellies']),'r--')
ax[0].set_title('Non Calanoid Seasonal Cycle')
ax[1].set_title('Larvacean Seasonal Cycle')
ax[2].set_title('Gastropod Seasonal Cycle')
ax[3].set_title('Jellies Seasonal Cycle')
ax[0].set_ylabel('Mean Biomass ($\mu$M N)')
ax[0].set_xlim(0,12)
ax[1].set_xlim(0,12)
ax[2].set_xlim(0,12)
ax[3].set_xlim(0,12)
ax[0].set_ylim(0,1.5)
ax[1].set_ylim(0,1.5)
ax[2].set_ylim(0,1.5)
ax[3].set_ylim(0,1.5)
(0.0, 1.5)
np.shape([testmean['L10Calanoids']-testsem['L10Calanoids'],
testmean['L10Calanoids']+testsem['L10Calanoids']])
(2, 12)
fig,ax=plt.subplots(1,4,figsize=(20,5))
fig.suptitle('Puget Sound', fontsize=24)
fig.subplots_adjust(top=0.8)
ax[0].errorbar(test.index,logt_inv(testmean['L10Calanoids']),
yerr=logt_inv(np.array([testmean['L10Calanoids']-testsem['L10Calanoids'],
testmean['L10Calanoids']+testsem['L10Calanoids']])),
fmt='ro',capsize=5)
ax[0].plot(10**(test['L10Calanoids']-.001),'b--')
ax[1].plot(10**(meanmonthLogEuph['L10Euphausiids']),'r-')
ax[1].plot(10**(test['L10Euphausiids']-.001),'b--')
ax[2].plot(10**(meanmonthLogAmph['L10Amphipods']),'r--')
ax[3].plot(10**(meanmonthLogCrab['L10Crabs']),'r--')
ax[0].set_title('Calanoid Seasonal Cycle')
ax[1].set_title('Euphausiid Seasonal Cycle')
ax[2].set_title('Amphipod Seasonal Cycle')
ax[3].set_title('Decapod Seasonal Cycle')
ax[0].set_ylabel('Mean Biomass ($\mu$M N)')
ax[0].set_xlim(0,12)
ax[1].set_xlim(0,12)
ax[2].set_xlim(0,12)
ax[3].set_xlim(0,12)
ax[0].set_ylim(0,2.3)
ax[1].set_ylim(0,1.5)
ax[2].set_ylim(0,1.5)
ax[3].set_ylim(0,1.5)
fig,ax=plt.subplots(1,4,figsize=(20,5))
ax[0].plot(10**(meanmonthLogNonCala['L10NonCalanoids']),'r--')
ax[1].plot(10**(meanmonthLogLarv['L10Larvaceans']),'r--')
ax[2].plot(10**(meanmonthGast['L10Gastropods']),'r--')
ax[3].plot(10**(meanmonthLogJellies['L10Jellies']),'r--')
ax[0].set_title('Non Calanoid Seasonal Cycle')
ax[1].set_title('Larvacean Seasonal Cycle')
ax[2].set_title('Gastropod Seasonal Cycle')
ax[3].set_title('Jellies Seasonal Cycle')
ax[0].set_ylabel('Mean Biomass ($\mu$M N)')
ax[0].set_xlim(0,12)
ax[1].set_xlim(0,12)
ax[2].set_xlim(0,12)
ax[3].set_xlim(0,12)
ax[0].set_ylim(0,1.5)
ax[1].set_ylim(0,1.5)
ax[2].set_ylim(0,1.5)
ax[3].set_ylim(0,1.5)
(0.0, 1.5)
monthTotal=data.groupby(['Sample Month', 'Total'], as_index=False).mean()
fig,ax=plt.subplots(1,1,figsize=(12,2.5))
ax.plot(10**(meanmonthLogTotal['L10Total']),'--',color='blue',label='Obs Total Zoop')
ax.set_ylim(0,3)
ax.set_title('Puget Sound Observation Zooplankton Seasonal Cycle')
ax.set_ylabel('Concentration ($\mu$M N)',fontsize=10)
fig,ax=plt.subplots(1,1,figsize=(12,2.5))
ax.plot(10**(meanmonthLogModMeso['L10mod_mesozooplankton']),'--',color='red',label='Model Microzoop')
ax.set_ylim(0,3)
ax.set_title('Model Mesozooplankton Seasonal Cycle')
ax.set_ylabel('Concentration ($\mu$M N)',fontsize=10)
fig,ax=plt.subplots(1,1,figsize=(12,2.5))
ax.plot(10**(meanmonthLogModMicro['L10mod_microzooplankton']),'--',color='darkorange',label='Model Microzoop')
ax.set_ylim(0,3)
ax.set_title('Model Microzooplankton Seasonal Cycle')
ax.set_ylabel('Concentration ($\mu$M N)',fontsize=10)
cm1=cmocean.cm.thermal
with nc.Dataset('/data/eolson/results/MEOPAR/NEMO-forcing-new/grid/bathymetry_201702.nc') as bathy:
bathylon=np.copy(bathy.variables['nav_lon'][:,:])
bathylat=np.copy(bathy.variables['nav_lat'][:,:])
bathyZ=np.copy(bathy.variables['Bathymetry'][:,:])
fig, ax = plt.subplots(1,1,figsize = (6,6))
with nc.Dataset('/ocean/ksuchy/MOAD/NEMO-forcing/grid/bathymetry_201702.nc') as grid:
viz_tools.plot_coastline(ax, grid, coords = 'map',isobath=.1)
colors=('teal','green','firebrick','darkorange','darkviolet','fuchsia',
'royalblue','darkgoldenrod','mediumspringgreen','deepskyblue')
datreg=dict()
for ind, iregion in enumerate(data.Basin.unique()):
datreg[iregion] = data.loc[data.Basin==iregion]
ax.plot(datreg[iregion]['Lon'], datreg[iregion]['Lat'],'.',
color = colors[ind], label=iregion)
ax.set_ylim(47,51)
ax.legend(bbox_to_anchor=[1,.6,0,0])
ax.set_xlim(-126, -120);
ax.set_title('Observation Locations');
ax.legend(bbox_to_anchor=(1.1, 1.05))
def byRegion(ax,obsvar,modvar,lims):
PS=[]
for ind, iregion in enumerate(data.Basin.unique()):
#ax.plot(datreg[iregion]['Lon'], datreg[iregion]['Lat'],'.',
#color = colors[ind], label=iregion)
PS0=et.varvarPlot(ax,datreg[iregion],obsvar,modvar,
cols=(colors[ind],),lname=iregion)
PS.append(PS0)
l=ax.legend(handles=[ip[0][0] for ip in PS])
ax.set_xlabel('Obs')
ax.set_ylabel('Model')
ax.plot(lims,lims,'k-',alpha=.5)
ax.set_xlim(lims)
ax.set_ylim(lims)
ax.set_aspect(1)
return PS,l
data['Month']=[ii.month for ii in data['dtUTC']]
JF=data.loc[(data.Month==1)|(data.Month==2)]
MAM=data.loc[(data.Month==3)|(data.Month==4)|(data.Month==5)]
JJA=data.loc[(data.Month==6)|(data.Month==7)|(data.Month==8)]
SOND=data.loc[(data.Month==9)|(data.Month==10)|(data.Month==11)|(data.Month==12)]
def bySeason(ax,obsvar,modvar,lims):
for axi in ax:
axi.plot(lims,lims,'k-')
axi.set_xlim(lims)
axi.set_ylim(lims)
axi.set_aspect(1)
axi.set_xlabel('Obs')
axi.set_ylabel('Model')
PS=et.varvarPlot(ax[0],JF,obsvar,modvar,cols=('crimson','darkturquoise','navy'))
ax[0].set_title('Winter')
PS=et.varvarPlot(ax[1],MAM,obsvar,modvar,cols=('crimson','darkturquoise','navy'))
ax[1].set_title('Spring')
PS=et.varvarPlot(ax[2],JJA,obsvar,modvar,cols=('crimson','darkturquoise','navy'))
ax[2].set_title('Summer')
PS=et.varvarPlot(ax[3],SOND,obsvar,modvar,cols=('crimson','darkturquoise','navy'))
ax[3].set_title('Autumn')
return
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10Calanoids','L10mod_mesozooplankton',(-2,2))
ax.set_title('Log10 Calanoids ($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10Calanoids','L10mod_mesozooplankton',(-2,2))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10NonCalanoids','L10mod_mesozooplankton',(-2,2))
ax.set_title('Log10 NonCalanoids ($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10NonCalanoids','L10mod_mesozooplankton',(-2,2))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10Euphausiids','L10mod_mesozooplankton',(-3,3))
ax.set_title('Log10 Euphausiids ($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10Euphausiids','L10mod_mesozooplankton',(-3,3))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10EuphausiidsJuv','L10mod_mesozooplankton',(-3,3))
ax.set_title('Log10 Euphausiid Juveniles ($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10EuphausiidsJuv','L10mod_mesozooplankton',(-3,3))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10Crabs','L10mod_mesozooplankton',(-3,2))
ax.set_title('L10 Crabs($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10Crabs','L10mod_mesozooplankton',(-3,2))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10Amphipods','L10mod_mesozooplankton',(-3,2))
ax.set_title('L10 Amphipods($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10Amphipods','L10mod_mesozooplankton',(-3,2))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10HyperiidAmph','L10mod_mesozooplankton',(-3,2))
ax.set_title('L10 Hyperiid Amphipods($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10HyperiidAmph','L10mod_mesozooplankton',(-3,2))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10Larvaceans','L10mod_mesozooplankton',(-3,3))
ax.set_title('Log10 Larvaceans ($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10Larvaceans','L10mod_mesozooplankton',(-3,3))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10Tunicates','L10mod_mesozooplankton',(-3,3))
ax.set_title('Log10 Tunicates ($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10Tunicates','L10mod_mesozooplankton',(-3,3))
fig, ax = plt.subplots(1,1,figsize = (16,7))
PS,l=byRegion(ax,'L10Jellies','L10mod_mesozooplankton',(-3,3))
ax.set_title('Log10 Jellies ($\mu$M) By Region')
ax.legend(bbox_to_anchor=(1.1, 1.05))
fig, ax = plt.subplots(1,4,figsize = (16,3.3))
bySeason(ax,'L10Jellies','L10mod_mesozooplankton',(-3,3))
fig,ax=plt.subplots(2,4,figsize=(15,7))
fig.subplots_adjust(wspace=.4)
fig.subplots_adjust(hspace=.6)
ax=ax.flatten()
taxa=('Amphipods', 'Euphausiids','Calanoids','NonCalanoids', 'Crabs','Larvaceans','Gastropods','Jellies')
mvar1=data['mod_microzooplankton']
mvar2=data['mod_mesozooplankton']
for ii in range(0,len(taxa)):
ax[ii].plot(logt(data.loc[:,[taxa[ii]]].values),logt(mvar1),'.',ms=1,color='blue',label='Microzoop')
ax[ii].plot(logt(data.loc[:,[taxa[ii]]].values),logt(mvar2),'.',ms=1,color='red',label='Mesozoop')
ax[ii].set_ylabel('Model Class')
ax[ii].set_xlabel(taxa[ii])
ax[ii].set_title('log10[$\mu$M +.001]')
ax[ii].plot((-3,3),(-3,3),'k-',alpha=.2)
ax[ii].set_xlim((-3,1))
ax[ii].set_ylim((-3,1))
ax[ii].set_aspect(1)
ax[0].legend(loc=2, fontsize = 'small')
def yd(idt):
if type(idt)==dt.datetime:
yd=(idt-dt.datetime(idt.year-1,12,31)).days
else: # assume array or pandas
yd=[(ii-dt.datetime(ii.year-1,12,31)).days for ii in idt]
return yd
data['yd']=yd(data['dtUTC'])
data['Year']=[ii.year for ii in data['dtUTC']]
fig,ax=plt.subplots(1,1,figsize=(7,7))
m=ax.scatter(logt(data['Calanoids']+data['Euphausiids']+data['Amphipods']+data['Crabs']+data['Larvaceans']+data['Gastropods'])+data['NonCalanoids']+data['Jellies'],logt(data['mod_mesozooplankton']),
c=data['yd'],s=5,cmap=cmocean.cm.phase)
ax.set_title('log10[ All Groups vs Model Mesozooplankton+ 0.001] By Year Day')
ax.set_xlabel('Obs')
ax.set_ylabel('Model')
ax.plot((-6,5),(-6,5),'r-',alpha=.3)
ax.set_xlim(-1.5,1.5)
ax.set_ylim(-1.5,1.5);
fig.colorbar(m)
fig,ax=plt.subplots(1,1,figsize=(7,7))
m=ax.scatter(logt(data['Calanoids']+data['Euphausiids']+data['Amphipods']),logt(data['mod_mesozooplankton']),
c=data['yd'],s=5,cmap=cmocean.cm.phase)
ax.set_title('log10[ Cala Euph Amph vs Model Mesozooplankton + 0.001] By Year Day')
ax.set_xlabel('Obs')
ax.set_ylabel('Model')
ax.plot((-6,5),(-6,5),'r-',alpha=.3)
ax.set_xlim(-1.5,1.5)
ax.set_ylim(-1.5,1.5);
fig.colorbar(m)
fig,ax=plt.subplots(1,1,figsize=(7,7))
m=ax.scatter(logt(data['Calanoids']+data['NonCalanoids']),logt(data['mod_mesozooplankton']),
c=data['yd'],s=5,cmap=cmocean.cm.phase)
ax.set_title('log10[ Copepods Only vs Model Mesozooplankton + 0.001] By Year Day')
ax.set_xlabel('Obs')
ax.set_ylabel('Model')
ax.plot((-6,5),(-6,5),'r-',alpha=.3)
ax.set_xlim(-1.5,1.5)
ax.set_ylim(-1.5,1.5);
fig.colorbar(m)
fig,ax=plt.subplots(1,1,figsize=(7,7))
m=ax.scatter(logt(data['Calanoids']+data['Euphausiids']+data['Amphipods']+data['Crabs']+data['Larvaceans']+data['Gastropods'])+data['NonCalanoids']+data['Jellies'],logt(data['mod_microzooplankton']),
c=data['yd'],s=5,cmap=cmocean.cm.phase)
ax.set_title('log10[ All Groups vs Mod Micro + 0.001] By Year Day')
ax.set_xlabel('Obs')
ax.set_ylabel('Model')
ax.plot((-6,5),(-6,5),'r-',alpha=.3)
ax.set_xlim(-2,2)
ax.set_ylim(-2,2);
fig.colorbar(m)
fig,ax=plt.subplots(1,1,figsize=(7,7))
m=ax.scatter(logt(data['Calanoids']+data['Euphausiids']+data['Amphipods']),logt(data['mod_microzooplankton']),
c=data['yd'],s=5,cmap=cmocean.cm.phase)
ax.set_title('log10[ Cala Euph Amph vs Mod Micro + 0.001] By Year Day')
ax.set_xlabel('Obs')
ax.set_ylabel('Model')
ax.plot((-6,5),(-6,5),'r-',alpha=.3)
ax.set_xlim(-2,2)
ax.set_ylim(-2,2);
fig.colorbar(m)
fig,ax=plt.subplots(1,1,figsize=(7,7))
m=ax.scatter(logt(data['Calanoids']+data['NonCalanoids']),logt(data['mod_microzooplankton']),
c=data['yd'],s=5,cmap=cmocean.cm.phase)
ax.set_title('log10[ Copepods vs Mod Micro + 0.001] By Year Day')
ax.set_xlabel('Obs')
ax.set_ylabel('Model')
ax.plot((-6,5),(-6,5),'r-',alpha=.3)
ax.set_xlim(-2,2)
ax.set_ylim(-2,2);
fig.colorbar(m)
fig,ax=plt.subplots(1,1,figsize=(7,7))
m=ax.scatter(logt(data['Larvaceans']),logt(data['mod_microzooplankton']),
c=data['yd'],s=5,cmap=cmocean.cm.phase)
ax.set_title('log10[ Larvaceans vs Mod Micro + 0.001] By Year Day')
ax.set_xlabel('Obs')
ax.set_ylabel('Model')
ax.plot((-6,5),(-6,5),'r-',alpha=.3)
ax.set_xlim(-3,3)
ax.set_ylim(-3,3);
fig.colorbar(m)
Amph=data['Amphipoda']
#data['L10Euphausiids']=logt(data['Euphausiids'])
#data['L10Crabs']=logt(data['Crabs'])
#data['L10Calanoids']=logt(data['Calanoids'])
data['L10Gastropods']=logt(data['Gastropods'])
data['L10Larvaceans']=logt(data['Larvaceans'])
data['L10EuphausiidsJuv']=logt(data['EuphausiidsJuv'])
data['L10HyperiidAmph']=logt(data['HyperiidAmph'])
data['L10NonCalanoids']=logt(data['NonCalanoids'])
data['L10Jellies']=logt(data['Jellies'])
data['L10Tunicates']=logt(data['Tunicates'])
data['L10mod_microzooplankton']=logt(data['mod_microzooplankton'])
data['L10mod_mesozooplankton']=logt(data['mod_mesozooplankton'])
obsvar='Calanoids'
modvar='mod_mesozooplankton'
start_date=dt.datetime(2015,1,1)
end_date=dt.datetime(2015,12,31)