In [2]:
# Load Biospytial modules and etc.
%matplotlib inline
import sys
sys.path.append('/apps')
import django
django.setup()
import pandas as pd
import matplotlib.pyplot as plt
## Use the ggplot style
plt.style.use('ggplot')

In [3]:
data = pd.read_csv("/RawDataCSV/iDiv_data_share/plotsClimateData_11092017.csv")


/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/interactiveshell.py:2717: DtypeWarning: Columns (24) have mixed types. Specify dtype option on import or set low_memory=False.
  interactivity=interactivity, compiler=compiler, result=result)

In [4]:
import geopandas as gpd

In [7]:
data.keys()


Out[7]:
Index([u'Unnamed: 0', u'STATECD', u'STATENM', u'STATEAB', u'COUNTYCD', u'PLOT',
       u'PLOT_ID', u'PlotIDn', u'LAT', u'LON', u'INVYR', u'N_subplot',
       u'StandAge', u'treeDensity', u'plotBA', u'plotBiomass', u'SppN',
       u'ECO_ID_U', u'ECO_CODE', u'ECO_NAME', u'ECO_NUM', u'ECODE_NAME',
       u'CLS_CODE', u'ECO_NOTES', u'WWF_REALM', u'WWF_REALM2', u'WWF_MHTNUM',
       u'WWF_MHTNAM', u'RealmMHT', u'ER_UPDATE', u'ER_DATE_U', u'ER_RATION',
       u'SOURCEDATA', u'ECOR', u'AnnualMeanPrec', u'TempSeason', u'AnnualPrec',
       u'PrecSeason', u'AET', u'lon', u'lat'],
      dtype='object')

In [10]:
gpd.GeoDataFrame?

In [11]:
geod = gpd.GeoDataFrame(data)


Out[11]:
Unnamed: 0 STATECD STATENM STATEAB COUNTYCD PLOT PLOT_ID PlotIDn LAT LON ... ER_RATION SOURCEDATA ECOR AnnualMeanPrec TempSeason AnnualPrec PrecSeason AET lon lat
0 1 1 Alabama AL 1 3 1_1_3 3 32.602260 -86.476329 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.658865 718.992591 1413 21.577757 1044.0 -86.476329 32.602260
1 2 1 Alabama AL 1 7 1_1_7 7 32.548292 -86.633541 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.499334 722.630181 1409 21.034854 1047.0 -86.633541 32.548292
2 3 1 Alabama AL 1 12 1_1_12 11 32.693874 -86.424075 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.322198 725.387013 1439 21.317879 1044.0 -86.424075 32.693874
3 4 1 Alabama AL 1 15 1_1_15 13 32.557749 -86.477435 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.658865 718.992591 1413 21.577757 1040.0 -86.477435 32.557749
4 5 1 Alabama AL 1 16 1_1_16 14 32.474320 -86.785024 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.920864 715.418624 1368 21.251447 1040.0 -86.785024 32.474320
5 6 1 Alabama AL 1 20 1_1_20 18 32.385575 -86.793624 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.920864 715.418624 1368 21.251447 1034.0 -86.793624 32.385575
6 7 1 Alabama AL 1 21 1_1_21 19 32.633755 -86.747287 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.493771 725.831803 1398 20.756506 1053.0 -86.747287 32.633755
7 8 1 Alabama AL 1 25 1_1_25 23 32.385228 -86.483333 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 18.230385 713.867338 1376 21.776178 1030.0 -86.483333 32.385228
8 9 1 Alabama AL 1 27 1_1_27 25 32.513878 -86.584285 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.499334 722.630181 1409 21.034854 1041.0 -86.584285 32.513878
9 10 1 Alabama AL 1 46 1_1_46 40 32.506287 -86.751136 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.493771 725.831803 1398 20.756506 1044.0 -86.751136 32.506287
10 11 1 Alabama AL 1 47 1_1_47 41 32.341720 -86.785581 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.920864 715.418624 1368 21.251447 1033.0 -86.785581 32.341720
11 12 1 Alabama AL 1 50 1_1_50 44 32.469436 -86.486575 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 18.230385 713.867338 1376 21.776178 1032.0 -86.486575 32.469436
12 13 1 Alabama AL 1 53 1_1_53 46 32.599499 -86.429499 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.658865 718.992591 1413 21.577757 1045.0 -86.429499 32.599499
13 14 1 Alabama AL 1 64 1_1_64 57 32.346711 -86.505816 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 18.046698 713.714886 1370 21.620137 1030.0 -86.505816 32.346711
14 15 1 Alabama AL 1 65 1_1_65 58 32.620641 -86.870002 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 17.472802 726.829570 1394 20.525088 1053.0 -86.870002 32.620641
15 16 1 Alabama AL 3 3 1_3_3 64 30.624574 -87.811685 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 19.300364 639.761846 1691 19.817678 1223.0 -87.811685 30.624574
16 17 1 Alabama AL 3 9 1_3_9 69 30.910634 -87.911595 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 19.160156 648.849315 1659 18.898880 1220.0 -87.911595 30.910634
17 18 1 Alabama AL 3 11 1_3_11 70 31.107329 -87.835514 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 18.994667 655.935493 1631 18.486169 1209.0 -87.835514 31.107329
18 19 1 Alabama AL 3 21 1_3_21 77 30.827385 -87.743657 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 19.006365 646.916936 1692 19.750294 1233.0 -87.743657 30.827385
19 20 1 Alabama AL 3 29 1_3_29 82 30.568903 -87.556019 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 19.285844 639.298778 1676 20.595675 1204.0 -87.556019 30.568903
20 21 1 Alabama AL 3 32 1_3_32 84 31.106793 -87.691191 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 18.724844 662.706571 1644 18.736410 1213.0 -87.691191 31.106793
21 22 1 Alabama AL 3 46 1_3_46 90 31.153125 -87.941087 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 18.994667 655.935493 1631 18.486169 1201.0 -87.941087 31.153125
22 23 1 Alabama AL 3 50 1_3_50 93 30.512405 -87.527604 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 19.285844 639.298778 1676 20.595675 1192.0 -87.527604 30.512405
23 24 1 Alabama AL 3 54 1_3_54 95 31.011483 -87.838071 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 18.994667 655.935493 1631 18.486169 1218.0 -87.838071 31.011483
24 25 1 Alabama AL 3 68 1_3_68 104 30.784826 -87.797096 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 19.006365 646.916936 1692 19.750294 1231.0 -87.797096 30.784826
25 26 1 Alabama AL 3 76 1_3_76 108 30.962482 -87.852304 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 19.160156 648.849315 1659 18.898880 1221.0 -87.852304 30.962482
26 27 1 Alabama AL 3 78 1_3_78 110 31.227792 -87.777660 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 18.724542 668.365948 1598 18.669643 1194.0 -87.777660 31.227792
27 28 1 Alabama AL 3 81 1_3_81 113 30.870260 -87.733493 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 18.834052 653.362024 1678 19.590974 1231.0 -87.733493 30.870260
28 29 1 Alabama AL 3 84 1_3_84 115 31.196096 -87.631524 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 18.460552 669.891546 1601 18.312511 1202.0 -87.631524 31.196096
29 30 1 Alabama AL 3 85 1_3_85 116 30.693417 -87.792019 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Conifer Forests 19.006365 646.916936 1692 19.750294 1230.0 -87.792019 30.693417
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
36815 36841 55 Wisconsin WI 139 20013 55_139_20013 156543 44.005539 -88.679883 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 7.260365 1108.505050 786 38.217657 654.0 -88.679883 44.005539
36816 36842 55 Wisconsin WI 139 20058 55_139_20058 156545 43.998038 -88.755331 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 7.164750 1107.269609 790 38.533905 661.0 -88.755331 43.998038
36817 36843 55 Wisconsin WI 139 20167 55_139_20167 156546 44.236548 -88.520169 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.935885 1108.396337 783 38.202941 659.0 -88.520169 44.236548
36818 36844 55 Wisconsin WI 141 20044 55_141_20044 156557 44.284849 -89.926944 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.801469 1140.398093 815 44.347439 694.0 -89.926944 44.284849
36819 36845 55 Wisconsin WI 141 20053 55_141_20053 156561 44.360807 -90.275293 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 5.986812 1136.289426 839 44.876172 697.0 -90.275293 44.360807
36820 36846 55 Wisconsin WI 141 20081 55_141_20081 156566 44.541150 -89.904645 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 5.834990 1141.028737 824 45.040813 701.0 -89.904645 44.541150
36821 36847 55 Wisconsin WI 141 20084 55_141_20084 156568 44.529212 -90.131815 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 5.768531 1147.732404 834 45.689294 701.0 -90.131815 44.529212
36822 36848 55 Wisconsin WI 141 20130 55_141_20130 156581 44.328047 -89.773745 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.671948 1138.598423 815 44.571311 694.0 -89.773745 44.328047
36823 36849 55 Wisconsin WI 141 20143 55_141_20143 156582 44.286563 -89.973917 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.801469 1140.398093 815 44.347439 691.0 -89.973917 44.286563
36824 36850 55 Wisconsin WI 141 20173 55_141_20173 156586 44.393739 -90.110988 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.156490 1141.859358 828 44.915918 696.0 -90.110988 44.393739
36825 36851 55 Wisconsin WI 141 20201 55_141_20201 156592 44.315250 -90.054372 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.557719 1122.433089 821 44.678805 692.0 -90.054372 44.315250
36826 36852 55 Wisconsin WI 141 20219 55_141_20219 156596 44.291181 -90.092533 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.557719 1122.433089 821 44.678805 693.0 -90.092533 44.291181
36827 36853 55 Wisconsin WI 141 20222 55_141_20222 156597 44.404072 -89.748225 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.528260 1141.610364 813 44.397223 695.0 -89.748225 44.404072
36828 36854 55 Wisconsin WI 141 20252 55_141_20252 156602 44.523927 -90.183388 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 5.615729 1142.890886 842 46.013819 702.0 -90.183388 44.523927
36829 36855 55 Wisconsin WI 141 20263 55_141_20263 156603 44.279302 -90.155504 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.557719 1122.433089 821 44.678805 693.0 -90.155504 44.279302
36830 36856 55 Wisconsin WI 141 20271 55_141_20271 156605 44.388963 -90.223114 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 5.986812 1136.289426 839 44.876172 697.0 -90.223114 44.388963
36831 36857 55 Wisconsin WI 141 20277 55_141_20277 156608 44.370275 -90.102854 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.156490 1141.859358 828 44.915918 696.0 -90.102854 44.370275
36832 36858 55 Wisconsin WI 141 20303 55_141_20303 156613 44.253966 -90.032898 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.557719 1122.433089 821 44.678805 691.0 -90.032898 44.253966
36833 36859 55 Wisconsin WI 141 20313 55_141_20313 156615 44.504710 -90.175232 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 5.615729 1142.890886 842 46.013819 701.0 -90.175232 44.504710
36834 36860 55 Wisconsin WI 141 20319 55_141_20319 156616 44.651950 -89.868171 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 5.834990 1141.028737 824 45.040813 701.0 -89.868171 44.651950
36835 36861 55 Wisconsin WI 141 20328 55_141_20328 156622 44.442028 -89.811739 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.528260 1141.610364 813 44.397223 694.0 -89.811739 44.442028
36836 36862 55 Wisconsin WI 141 20329 55_141_20329 156623 44.376466 -89.854789 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.319188 1141.978175 822 44.159047 693.0 -89.854789 44.376466
36837 36863 55 Wisconsin WI 141 20380 55_141_20380 156636 44.399949 -89.913148 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.319188 1141.978175 822 44.159047 697.0 -89.913148 44.399949
36838 36864 55 Wisconsin WI 141 20381 55_141_20381 156637 44.417291 -90.098826 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.156490 1141.859358 828 44.915918 696.0 -90.098826 44.417291
36839 36865 55 Wisconsin WI 141 20382 55_141_20382 156638 44.386097 -90.052550 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.156490 1141.859358 828 44.915918 697.0 -90.052550 44.386097
36840 36866 55 Wisconsin WI 141 20384 55_141_20384 156639 44.316655 -90.122631 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.557719 1122.433089 821 44.678805 693.0 -90.122631 44.316655
36841 36867 55 Wisconsin WI 141 20403 55_141_20403 156643 44.423240 -90.027616 ... Yes/August2003/LSotomayor / J. Slaats/July2003 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.156490 1141.859358 828 44.915918 697.0 -90.027616 44.423240
36842 36868 55 Wisconsin WI 141 20404 55_141_20404 156644 44.366777 -89.726969 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.528260 1141.610364 813 44.397223 693.0 -89.726969 44.366777
36843 36869 55 Wisconsin WI 141 20405 55_141_20405 156645 44.313614 -90.237374 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.396365 1134.578026 832 44.349472 698.0 -90.237374 44.313614
36844 36870 55 Wisconsin WI 141 20406 55_141_20406 156646 44.261186 -89.746097 ... NA / D. Dorfman/ECO2001 Bailey, R, modified by TNC. 2004. Ecoregions o... Temperate Broadleaf and Mixed Forests 6.671948 1138.598423 815 44.571311 688.0 -89.746097 44.261186

36845 rows × 41 columns


In [ ]:


In [ ]:


In [ ]:


In [ ]:


In [76]:
fig = plt.figure(figsize=(16,10), dpi= 80, facecolor='w', edgecolor='w')
plt.rcParams['axes.facecolor'] = 'white'
plt.scatter(data.lon,data.lat,c=data.AET,cmap=plt.cm.Greens,edgecolors='')
plt.title("Evapotranspiration")
plt.colorbar()


Out[76]:
<matplotlib.colorbar.Colorbar at 0x7f2d8a8f4690>

In [4]:
fig = plt.figure(figsize=(16,10), dpi= 80, facecolor='w', edgecolor='w')
plt.scatter(data.lon,data.lat,c=data.StandAge,edgecolors='',cmap=plt.cm.BrBG)
plt.title("Stand Age")
plt.colorbar()


Out[4]:
<matplotlib.colorbar.Colorbar at 0x7f2f6be15c10>

In [77]:
fig = plt.figure(figsize=(16,10), dpi= 80, facecolor='w', edgecolor='w')
plt.scatter(data.lon,data.lat,c=data.SppN,edgecolors='')
plt.title("Species Richness")
plt.colorbar()


Out[77]:
<matplotlib.colorbar.Colorbar at 0x7f2d8a7d2c10>

In [6]:
fig = plt.figure(figsize=(16,10), dpi= 80, facecolor='w', edgecolor='w')
plt.scatter(data.lon,data.lat,c=data.plotBiomass,edgecolors='',cmap=plt.cm.Greens)
plt.title("Plot Biomass")
plt.colorbar()


Out[6]:
<matplotlib.colorbar.Colorbar at 0x7f2f6824cf50>

In [7]:
plt.scatter(data.AET,data.SppN)


Out[7]:
<matplotlib.collections.PathCollection at 0x7f2f680745d0>

Model Fitting Using a GLM

The general model will have the form: $$ Biomass(x,y) = \beta_1 AET + \beta_2 Age + Z(x,y) + \epsilon $$ Where: $\beta_1$ and $\beta_2$ are model parameters, $Z(x,y)$ is the Spatial Autocorrelation process and $\epsilon \sim N(0,\sigma^2)$


In [70]:
len(data.lon)
#X = data[['AET','StandAge','lon','lat']]
X = data[['SppN','lon','lat']]
#X = data[['lon','lat']]
Y = data['plotBiomass']
#Y = data[['SppN']]
## First step in spatial autocorrelation
#Y = pd.DataFrame(np.zeros(len(Y)))
## Let´s take a small sample only for the spatial autocorrelation
import numpy as np
sample_size = 2000
randindx = np.random.randint(0,X.shape[0],sample_size)
nX = X.loc[randindx]
nY = Y.loc[randindx]

In [72]:
# Import GPFlow
import GPflow as gf
k = gf.kernels.Matern12(2, lengthscales=1, active_dims = [1,2] )

In [73]:
model = gf.gpr.GPR(nX.as_matrix(),nY.as_matrix().reshape(sample_size,1).astype(float),k)

In [74]:
model.likelihood.variance = 10
model.optimize()


Out[74]:
      fun: 20596.08632030103
 hess_inv: <3x3 LbfgsInvHessProduct with dtype=float64>
      jac: array([  5.78522765e-08,  -1.91589997e-07,  -7.37748439e-06])
  message: 'CONVERGENCE: NORM_OF_PROJECTED_GRADIENT_<=_PGTOL'
     nfev: 71
      nit: 60
   status: 0
  success: True
        x: array([  1244635.29196167,  15585310.29301777,  38550013.84500826])

In [94]:
Nn = 300
predicted_x = np.linspace(min(data.lon),max(data.lon),Nn)
predicted_y = np.linspace(min(data.lat),max(data.lat),Nn)
Xx, Yy = np.meshgrid(predicted_x,predicted_y)
## Fake richness
fake_sp_rich = np.ones(len(Xx.ravel()))
predicted_coordinates = np.vstack([ Xx.ravel(), Yy.ravel()]).transpose()
predicted_coordinates = np.vstack([data.SppN, data.lon, data.lat]).transpose()

In [95]:
predicted_coordinates.shape


Out[95]:
(36845, 3)

In [96]:
means,variances = model.predict_y(predicted_coordinates)

In [98]:
plt.scatter(data.SppN,means)


Out[98]:
<matplotlib.collections.PathCollection at 0x7f2d5ad352d0>

In [67]:
fig = plt.figure(figsize=(16,10), dpi= 80, facecolor='w', edgecolor='w')
plt.pcolor(Xx,Yy,means.reshape(Nn,Nn),cmap=plt.cm.Greens)
plt.colorbar()
plt.scatter(nX.lon,nX.lat,c=nY,edgecolors='',cmap=plt.cm.Greys)
plt.title("Mean Biomass")
plt.colorbar()


Out[67]:
<matplotlib.colorbar.Colorbar at 0x7f2e55148b10>

In [100]:
fig = plt.figure(figsize=(16,10), dpi= 80, facecolor='w', edgecolor='w')
plt.pcolor(Xx,Yy,variances.reshape(Nn,Nn),cmap=plt.cm.Blues)
plt.colorbar()
plt.scatter(nX.lon,nX.lat,c=nY,edgecolors='',cmap=plt.cm.Greys)
plt.title("Variance")
plt.colorbar()



ValueErrorTraceback (most recent call last)
<ipython-input-100-b0554ae360fc> in <module>()
      1 fig = plt.figure(figsize=(16,10), dpi= 80, facecolor='w', edgecolor='w')
----> 2 plt.pcolor(Xx,Yy,variances.reshape(Nn,Nn),cmap=plt.cm.Blues)
      3 plt.colorbar()
      4 plt.scatter(nX.lon,nX.lat,c=nY,edgecolors='',cmap=plt.cm.Greys)
      5 plt.title("Variance")

ValueError: total size of new array must be unchanged
<matplotlib.figure.Figure at 0x7f2d5ac8c7d0>

In [83]:
predicted_coordinates = np.vstack([data.SppN, data.lon, data.lat])

In [84]:
means,variances = model.predict_y(predicted_coordinates)

In [80]:
plt.plot(predicted_coordinates)


Out[80]:
[<matplotlib.lines.Line2D at 0x7f2d8a48c7d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a48c9d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a48cb10>,
 <matplotlib.lines.Line2D at 0x7f2d8a48cc50>,
 <matplotlib.lines.Line2D at 0x7f2d8a48cd90>,
 <matplotlib.lines.Line2D at 0x7f2d8a48ced0>,
 <matplotlib.lines.Line2D at 0x7f2d8a49a050>,
 <matplotlib.lines.Line2D at 0x7f2d8a49a190>,
 <matplotlib.lines.Line2D at 0x7f2d8a49a2d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a49a410>,
 <matplotlib.lines.Line2D at 0x7f2d8a49a550>,
 <matplotlib.lines.Line2D at 0x7f2d8a49a690>,
 <matplotlib.lines.Line2D at 0x7f2d8a49a7d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a49a910>,
 <matplotlib.lines.Line2D at 0x7f2d8a53bdd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a49ab90>,
 <matplotlib.lines.Line2D at 0x7f2d8a49acd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a49ae10>,
 <matplotlib.lines.Line2D at 0x7f2d8a49af50>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a40d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4210>,
 <matplotlib.lines.Line2D at 0x7f2d8a49aa50>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4490>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a45d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4710>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4850>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4990>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4350>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4af150>,
 <matplotlib.lines.Line2D at 0x7f2d8a4af290>,
 <matplotlib.lines.Line2D at 0x7f2d8a4af3d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4a4c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a4af650>,
 <matplotlib.lines.Line2D at 0x7f2d8a4af790>,
 <matplotlib.lines.Line2D at 0x7f2d8a4af8d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4afa10>,
 <matplotlib.lines.Line2D at 0x7f2d8a4afb50>,
 <matplotlib.lines.Line2D at 0x7f2d8a4afc90>,
 <matplotlib.lines.Line2D at 0x7f2d8a4af510>,
 <matplotlib.lines.Line2D at 0x7f2d8a4aff10>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8090>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b81d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8310>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8450>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8590>,
 <matplotlib.lines.Line2D at 0x7f2d8a4afdd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8810>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8950>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b86d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a442110>,
 <matplotlib.lines.Line2D at 0x7f2d8a442250>,
 <matplotlib.lines.Line2D at 0x7f2d8a442390>,
 <matplotlib.lines.Line2D at 0x7f2d8a4424d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a442610>,
 <matplotlib.lines.Line2D at 0x7f2d8a442750>,
 <matplotlib.lines.Line2D at 0x7f2d8a4b8f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a4429d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a442b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a442c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a442d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a442ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a44c050>,
 <matplotlib.lines.Line2D at 0x7f2d8a442890>,
 <matplotlib.lines.Line2D at 0x7f2d8a44c2d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a44c410>,
 <matplotlib.lines.Line2D at 0x7f2d8a44c550>,
 <matplotlib.lines.Line2D at 0x7f2d8a44c690>,
 <matplotlib.lines.Line2D at 0x7f2d8a44c7d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a44c910>,
 <matplotlib.lines.Line2D at 0x7f2d8a44c190>,
 <matplotlib.lines.Line2D at 0x7f2d8a44cb90>,
 <matplotlib.lines.Line2D at 0x7f2d8a44ccd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a44ce10>,
 <matplotlib.lines.Line2D at 0x7f2d8a44cf50>,
 <matplotlib.lines.Line2D at 0x7f2d8a4570d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a457210>,
 <matplotlib.lines.Line2D at 0x7f2d8a44ca50>,
 <matplotlib.lines.Line2D at 0x7f2d8a457490>,
 <matplotlib.lines.Line2D at 0x7f2d8a4575d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a457710>,
 <matplotlib.lines.Line2D at 0x7f2d8a457850>,
 <matplotlib.lines.Line2D at 0x7f2d8a457990>,
 <matplotlib.lines.Line2D at 0x7f2d8a457ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a457350>,
 <matplotlib.lines.Line2D at 0x7f2d8a457d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a457e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a457fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a460150>,
 <matplotlib.lines.Line2D at 0x7f2d8a460290>,
 <matplotlib.lines.Line2D at 0x7f2d8a4603d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a457c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a460650>,
 <matplotlib.lines.Line2D at 0x7f2d8a460790>,
 <matplotlib.lines.Line2D at 0x7f2d8a4608d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a460a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a460b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a460c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a460510>,
 <matplotlib.lines.Line2D at 0x7f2d8a460f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a46b090>,
 <matplotlib.lines.Line2D at 0x7f2d8a46b1d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a46b310>,
 <matplotlib.lines.Line2D at 0x7f2d8a46b450>,
 <matplotlib.lines.Line2D at 0x7f2d8a46b590>,
 <matplotlib.lines.Line2D at 0x7f2d8a460dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a46b810>,
 <matplotlib.lines.Line2D at 0x7f2d8a46b950>,
 <matplotlib.lines.Line2D at 0x7f2d8a46ba90>,
 <matplotlib.lines.Line2D at 0x7f2d8a46bbd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a46bd10>,
 <matplotlib.lines.Line2D at 0x7f2d8a46be50>,
 <matplotlib.lines.Line2D at 0x7f2d8a46b6d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a475110>,
 <matplotlib.lines.Line2D at 0x7f2d8a475250>,
 <matplotlib.lines.Line2D at 0x7f2d8a475390>,
 <matplotlib.lines.Line2D at 0x7f2d8a4754d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a475610>,
 <matplotlib.lines.Line2D at 0x7f2d8a475750>,
 <matplotlib.lines.Line2D at 0x7f2d8a46bf90>,
 <matplotlib.lines.Line2D at 0x7f2d8a4759d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a475b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a475c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a475d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a475ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a400050>,
 <matplotlib.lines.Line2D at 0x7f2d8a475890>,
 <matplotlib.lines.Line2D at 0x7f2d8a4002d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a400410>,
 <matplotlib.lines.Line2D at 0x7f2d8a400550>,
 <matplotlib.lines.Line2D at 0x7f2d8a400690>,
 <matplotlib.lines.Line2D at 0x7f2d8a4007d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a400910>,
 <matplotlib.lines.Line2D at 0x7f2d8a400190>,
 <matplotlib.lines.Line2D at 0x7f2d8a400b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a400cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a400e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a400f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a4090d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a409210>,
 <matplotlib.lines.Line2D at 0x7f2d8a400a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a409490>,
 <matplotlib.lines.Line2D at 0x7f2d8a4095d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a409710>,
 <matplotlib.lines.Line2D at 0x7f2d8a409850>,
 <matplotlib.lines.Line2D at 0x7f2d8a409990>,
 <matplotlib.lines.Line2D at 0x7f2d8a409ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a409350>,
 <matplotlib.lines.Line2D at 0x7f2d8a409d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a409e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a409fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a414150>,
 <matplotlib.lines.Line2D at 0x7f2d8a414290>,
 <matplotlib.lines.Line2D at 0x7f2d8a4143d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a409c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a414650>,
 <matplotlib.lines.Line2D at 0x7f2d8a414790>,
 <matplotlib.lines.Line2D at 0x7f2d8a4148d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a414a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a414b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a414c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a414510>,
 <matplotlib.lines.Line2D at 0x7f2d8a414f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a41e090>,
 <matplotlib.lines.Line2D at 0x7f2d8a41e1d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a41e310>,
 <matplotlib.lines.Line2D at 0x7f2d8a41e450>,
 <matplotlib.lines.Line2D at 0x7f2d8a41e590>,
 <matplotlib.lines.Line2D at 0x7f2d8a414dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a41e810>,
 <matplotlib.lines.Line2D at 0x7f2d8a41e950>,
 <matplotlib.lines.Line2D at 0x7f2d8a41ea90>,
 <matplotlib.lines.Line2D at 0x7f2d8a41ebd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a41ed10>,
 <matplotlib.lines.Line2D at 0x7f2d8a41ee50>,
 <matplotlib.lines.Line2D at 0x7f2d8a41e6d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a428110>,
 <matplotlib.lines.Line2D at 0x7f2d8a428250>,
 <matplotlib.lines.Line2D at 0x7f2d8a428390>,
 <matplotlib.lines.Line2D at 0x7f2d8a4284d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a428610>,
 <matplotlib.lines.Line2D at 0x7f2d8a428750>,
 <matplotlib.lines.Line2D at 0x7f2d8a41ef90>,
 <matplotlib.lines.Line2D at 0x7f2d8a4289d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a428b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a428c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a428d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a428ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a431050>,
 <matplotlib.lines.Line2D at 0x7f2d8a428890>,
 <matplotlib.lines.Line2D at 0x7f2d8a4312d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a431410>,
 <matplotlib.lines.Line2D at 0x7f2d8a431550>,
 <matplotlib.lines.Line2D at 0x7f2d8a431690>,
 <matplotlib.lines.Line2D at 0x7f2d8a4317d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a431910>,
 <matplotlib.lines.Line2D at 0x7f2d8a431190>,
 <matplotlib.lines.Line2D at 0x7f2d8a431b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a431cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a431e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a431f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a43c0d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a43c210>,
 <matplotlib.lines.Line2D at 0x7f2d8a431a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a43c490>,
 <matplotlib.lines.Line2D at 0x7f2d8a43c5d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a43c710>,
 <matplotlib.lines.Line2D at 0x7f2d8a43c850>,
 <matplotlib.lines.Line2D at 0x7f2d8a43c990>,
 <matplotlib.lines.Line2D at 0x7f2d8a43cad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a43c350>,
 <matplotlib.lines.Line2D at 0x7f2d8a43cd50>,
 <matplotlib.lines.Line2D at 0x7f2d8a43ce90>,
 <matplotlib.lines.Line2D at 0x7f2d8a43cfd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6150>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6290>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c63d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a43cc10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6650>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6790>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c68d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6510>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1090>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d11d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1310>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1450>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1590>,
 <matplotlib.lines.Line2D at 0x7f2d8a3c6dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1810>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1950>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d16d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3db110>,
 <matplotlib.lines.Line2D at 0x7f2d8a3db250>,
 <matplotlib.lines.Line2D at 0x7f2d8a3db390>,
 <matplotlib.lines.Line2D at 0x7f2d8a3db4d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3db610>,
 <matplotlib.lines.Line2D at 0x7f2d8a3db750>,
 <matplotlib.lines.Line2D at 0x7f2d8a3d1f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3db9d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3dbb10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3dbc50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3dbd90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3dbed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4050>,
 <matplotlib.lines.Line2D at 0x7f2d8a3db890>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e42d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4410>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4550>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4690>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e47d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4910>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4190>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ef0d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ef210>,
 <matplotlib.lines.Line2D at 0x7f2d8a3e4a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ef490>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ef5d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ef710>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ef850>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ef990>,
 <matplotlib.lines.Line2D at 0x7f2d8a3efad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ef350>,
 <matplotlib.lines.Line2D at 0x7f2d8a3efd50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3efe90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3effd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fa150>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fa290>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fa3d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3efc10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fa650>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fa790>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fa8d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3faa10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fab50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fac90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fa510>,
 <matplotlib.lines.Line2D at 0x7f2d8a3faf10>,
 <matplotlib.lines.Line2D at 0x7f2d8a383090>,
 <matplotlib.lines.Line2D at 0x7f2d8a3831d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a383310>,
 <matplotlib.lines.Line2D at 0x7f2d8a383450>,
 <matplotlib.lines.Line2D at 0x7f2d8a383590>,
 <matplotlib.lines.Line2D at 0x7f2d8a3fadd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a383810>,
 <matplotlib.lines.Line2D at 0x7f2d8a383950>,
 <matplotlib.lines.Line2D at 0x7f2d8a383a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a383bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a383d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a383e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3836d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a38d110>,
 <matplotlib.lines.Line2D at 0x7f2d8a38d250>,
 <matplotlib.lines.Line2D at 0x7f2d8a38d390>,
 <matplotlib.lines.Line2D at 0x7f2d8a38d4d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a38d610>,
 <matplotlib.lines.Line2D at 0x7f2d8a38d750>,
 <matplotlib.lines.Line2D at 0x7f2d8a383f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a38d9d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a38db10>,
 <matplotlib.lines.Line2D at 0x7f2d8a38dc50>,
 <matplotlib.lines.Line2D at 0x7f2d8a38dd90>,
 <matplotlib.lines.Line2D at 0x7f2d8a38ded0>,
 <matplotlib.lines.Line2D at 0x7f2d8a397050>,
 <matplotlib.lines.Line2D at 0x7f2d8a38d890>,
 <matplotlib.lines.Line2D at 0x7f2d8a3972d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a397410>,
 <matplotlib.lines.Line2D at 0x7f2d8a397550>,
 <matplotlib.lines.Line2D at 0x7f2d8a397690>,
 <matplotlib.lines.Line2D at 0x7f2d8a3977d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a397910>,
 <matplotlib.lines.Line2D at 0x7f2d8a397190>,
 <matplotlib.lines.Line2D at 0x7f2d8a397b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a397cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a397e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a397f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a30d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3210>,
 <matplotlib.lines.Line2D at 0x7f2d8a397a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3490>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a35d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3710>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3850>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3990>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3350>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ab150>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ab290>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ab3d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3a3c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ab650>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ab790>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ab8d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3aba10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3abb50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3abc90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3ab510>,
 <matplotlib.lines.Line2D at 0x7f2d8a3abf10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5090>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b51d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5310>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5450>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5590>,
 <matplotlib.lines.Line2D at 0x7f2d8a3abdd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5810>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5950>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b56d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a341110>,
 <matplotlib.lines.Line2D at 0x7f2d8a341250>,
 <matplotlib.lines.Line2D at 0x7f2d8a341390>,
 <matplotlib.lines.Line2D at 0x7f2d8a3414d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a341610>,
 <matplotlib.lines.Line2D at 0x7f2d8a341750>,
 <matplotlib.lines.Line2D at 0x7f2d8a3b5f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3419d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a341b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a341c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a341d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a341ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a34a050>,
 <matplotlib.lines.Line2D at 0x7f2d8a341890>,
 <matplotlib.lines.Line2D at 0x7f2d8a34a2d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a34a410>,
 <matplotlib.lines.Line2D at 0x7f2d8a34a550>,
 <matplotlib.lines.Line2D at 0x7f2d8a34a690>,
 <matplotlib.lines.Line2D at 0x7f2d8a34a7d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a34a910>,
 <matplotlib.lines.Line2D at 0x7f2d8a34a190>,
 <matplotlib.lines.Line2D at 0x7f2d8a34ab90>,
 <matplotlib.lines.Line2D at 0x7f2d8a34acd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a34ae10>,
 <matplotlib.lines.Line2D at 0x7f2d8a34af50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3540d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a354210>,
 <matplotlib.lines.Line2D at 0x7f2d8a34aa50>,
 <matplotlib.lines.Line2D at 0x7f2d8a354490>,
 <matplotlib.lines.Line2D at 0x7f2d8a3545d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a354710>,
 <matplotlib.lines.Line2D at 0x7f2d8a354850>,
 <matplotlib.lines.Line2D at 0x7f2d8a354990>,
 <matplotlib.lines.Line2D at 0x7f2d8a354ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a354350>,
 <matplotlib.lines.Line2D at 0x7f2d8a354d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a354e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a354fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a360150>,
 <matplotlib.lines.Line2D at 0x7f2d8a360290>,
 <matplotlib.lines.Line2D at 0x7f2d8a3603d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a354c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a360650>,
 <matplotlib.lines.Line2D at 0x7f2d8a360790>,
 <matplotlib.lines.Line2D at 0x7f2d8a3608d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a360a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a360b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a360c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a360510>,
 <matplotlib.lines.Line2D at 0x7f2d8a360f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a369090>,
 <matplotlib.lines.Line2D at 0x7f2d8a3691d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a369310>,
 <matplotlib.lines.Line2D at 0x7f2d8a369450>,
 <matplotlib.lines.Line2D at 0x7f2d8a369590>,
 <matplotlib.lines.Line2D at 0x7f2d8a360dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a369810>,
 <matplotlib.lines.Line2D at 0x7f2d8a369950>,
 <matplotlib.lines.Line2D at 0x7f2d8a369a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a369bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a369d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a369e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3696d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a372110>,
 <matplotlib.lines.Line2D at 0x7f2d8a372250>,
 <matplotlib.lines.Line2D at 0x7f2d8a372390>,
 <matplotlib.lines.Line2D at 0x7f2d8a3724d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a372610>,
 <matplotlib.lines.Line2D at 0x7f2d8a372750>,
 <matplotlib.lines.Line2D at 0x7f2d8a369f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3729d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a372b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a372c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a372d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a372ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a37c050>,
 <matplotlib.lines.Line2D at 0x7f2d8a372890>,
 <matplotlib.lines.Line2D at 0x7f2d8a37c2d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a37c410>,
 <matplotlib.lines.Line2D at 0x7f2d8a37c550>,
 <matplotlib.lines.Line2D at 0x7f2d8a37c690>,
 <matplotlib.lines.Line2D at 0x7f2d8a37c7d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a37c910>,
 <matplotlib.lines.Line2D at 0x7f2d8a37c190>,
 <matplotlib.lines.Line2D at 0x7f2d8a37cb90>,
 <matplotlib.lines.Line2D at 0x7f2d8a37ccd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a37ce10>,
 <matplotlib.lines.Line2D at 0x7f2d8a37cf50>,
 <matplotlib.lines.Line2D at 0x7f2d8a3070d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a307210>,
 <matplotlib.lines.Line2D at 0x7f2d8a37ca50>,
 <matplotlib.lines.Line2D at 0x7f2d8a307490>,
 <matplotlib.lines.Line2D at 0x7f2d8a3075d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a307710>,
 <matplotlib.lines.Line2D at 0x7f2d8a307850>,
 <matplotlib.lines.Line2D at 0x7f2d8a307990>,
 <matplotlib.lines.Line2D at 0x7f2d8a307ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a307350>,
 <matplotlib.lines.Line2D at 0x7f2d8a307d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a307e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a307fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a312150>,
 <matplotlib.lines.Line2D at 0x7f2d8a312290>,
 <matplotlib.lines.Line2D at 0x7f2d8a3123d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a307c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a312650>,
 <matplotlib.lines.Line2D at 0x7f2d8a312790>,
 <matplotlib.lines.Line2D at 0x7f2d8a3128d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a312a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a312b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a312c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a312510>,
 <matplotlib.lines.Line2D at 0x7f2d8a312f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a31a090>,
 <matplotlib.lines.Line2D at 0x7f2d8a31a1d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a31a310>,
 <matplotlib.lines.Line2D at 0x7f2d8a31a450>,
 <matplotlib.lines.Line2D at 0x7f2d8a31a590>,
 <matplotlib.lines.Line2D at 0x7f2d8a312dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a31a810>,
 <matplotlib.lines.Line2D at 0x7f2d8a31a950>,
 <matplotlib.lines.Line2D at 0x7f2d8a31aa90>,
 <matplotlib.lines.Line2D at 0x7f2d8a31abd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a31ad10>,
 <matplotlib.lines.Line2D at 0x7f2d8a31ae50>,
 <matplotlib.lines.Line2D at 0x7f2d8a31a6d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a326110>,
 <matplotlib.lines.Line2D at 0x7f2d8a326250>,
 <matplotlib.lines.Line2D at 0x7f2d8a326390>,
 <matplotlib.lines.Line2D at 0x7f2d8a3264d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a326610>,
 <matplotlib.lines.Line2D at 0x7f2d8a326750>,
 <matplotlib.lines.Line2D at 0x7f2d8a31af90>,
 <matplotlib.lines.Line2D at 0x7f2d8a3269d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a326b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a326c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a326d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a326ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a330050>,
 <matplotlib.lines.Line2D at 0x7f2d8a326890>,
 <matplotlib.lines.Line2D at 0x7f2d8a3302d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a330410>,
 <matplotlib.lines.Line2D at 0x7f2d8a330550>,
 <matplotlib.lines.Line2D at 0x7f2d8a330690>,
 <matplotlib.lines.Line2D at 0x7f2d8a3307d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a330910>,
 <matplotlib.lines.Line2D at 0x7f2d8a330190>,
 <matplotlib.lines.Line2D at 0x7f2d8a330b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a330cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a330e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a330f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a33a0d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a33a210>,
 <matplotlib.lines.Line2D at 0x7f2d8a330a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a33a490>,
 <matplotlib.lines.Line2D at 0x7f2d8a33a5d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a33a710>,
 <matplotlib.lines.Line2D at 0x7f2d8a33a850>,
 <matplotlib.lines.Line2D at 0x7f2d8a33a990>,
 <matplotlib.lines.Line2D at 0x7f2d8a33aad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a33a350>,
 <matplotlib.lines.Line2D at 0x7f2d8a33ad50>,
 <matplotlib.lines.Line2D at 0x7f2d8a33ae90>,
 <matplotlib.lines.Line2D at 0x7f2d8a33afd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4150>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4290>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c43d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a33ac10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4650>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4790>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c48d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4510>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ce090>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ce1d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ce310>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ce450>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ce590>,
 <matplotlib.lines.Line2D at 0x7f2d8a2c4dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ce810>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ce950>,
 <matplotlib.lines.Line2D at 0x7f2d8a2cea90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2cebd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ced10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2cee50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ce6d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9110>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9250>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9390>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d94d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9610>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9750>,
 <matplotlib.lines.Line2D at 0x7f2d8a2cef90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d99d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2050>,
 <matplotlib.lines.Line2D at 0x7f2d8a2d9890>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e22d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2410>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2550>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2690>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e27d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2910>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2190>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ec0d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ec210>,
 <matplotlib.lines.Line2D at 0x7f2d8a2e2a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ec490>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ec5d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ec710>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ec850>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ec990>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ecad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ec350>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ecd50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ece90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ecfd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7150>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7290>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f73d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ecc10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7650>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7790>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f78d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7510>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a281090>,
 <matplotlib.lines.Line2D at 0x7f2d8a2811d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a281310>,
 <matplotlib.lines.Line2D at 0x7f2d8a281450>,
 <matplotlib.lines.Line2D at 0x7f2d8a281590>,
 <matplotlib.lines.Line2D at 0x7f2d8a2f7dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a281810>,
 <matplotlib.lines.Line2D at 0x7f2d8a281950>,
 <matplotlib.lines.Line2D at 0x7f2d8a281a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a281bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a281d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a281e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2816d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a28b110>,
 <matplotlib.lines.Line2D at 0x7f2d8a28b250>,
 <matplotlib.lines.Line2D at 0x7f2d8a28b390>,
 <matplotlib.lines.Line2D at 0x7f2d8a28b4d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a28b610>,
 <matplotlib.lines.Line2D at 0x7f2d8a28b750>,
 <matplotlib.lines.Line2D at 0x7f2d8a281f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a28b9d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a28bb10>,
 <matplotlib.lines.Line2D at 0x7f2d8a28bc50>,
 <matplotlib.lines.Line2D at 0x7f2d8a28bd90>,
 <matplotlib.lines.Line2D at 0x7f2d8a28bed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a295050>,
 <matplotlib.lines.Line2D at 0x7f2d8a28b890>,
 <matplotlib.lines.Line2D at 0x7f2d8a2952d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a295410>,
 <matplotlib.lines.Line2D at 0x7f2d8a295550>,
 <matplotlib.lines.Line2D at 0x7f2d8a295690>,
 <matplotlib.lines.Line2D at 0x7f2d8a2957d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a295910>,
 <matplotlib.lines.Line2D at 0x7f2d8a295190>,
 <matplotlib.lines.Line2D at 0x7f2d8a295b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a295cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a295e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a295f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a29f0d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a29f210>,
 <matplotlib.lines.Line2D at 0x7f2d8a295a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a29f490>,
 <matplotlib.lines.Line2D at 0x7f2d8a29f5d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a29f710>,
 <matplotlib.lines.Line2D at 0x7f2d8a29f850>,
 <matplotlib.lines.Line2D at 0x7f2d8a29f990>,
 <matplotlib.lines.Line2D at 0x7f2d8a29fad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a29f350>,
 <matplotlib.lines.Line2D at 0x7f2d8a29fd50>,
 <matplotlib.lines.Line2D at 0x7f2d8a29fe90>,
 <matplotlib.lines.Line2D at 0x7f2d8a29ffd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ab150>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ab290>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ab3d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a29fc10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ab650>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ab790>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ab8d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2aba10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2abb50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2abc90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2ab510>,
 <matplotlib.lines.Line2D at 0x7f2d8a2abf10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4090>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b41d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4310>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4450>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4590>,
 <matplotlib.lines.Line2D at 0x7f2d8a2abdd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4810>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4950>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b46d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bd110>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bd250>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bd390>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bd4d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bd610>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bd750>,
 <matplotlib.lines.Line2D at 0x7f2d8a2b4f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bd9d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bdb10>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bdc50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bdd90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bded0>,
 <matplotlib.lines.Line2D at 0x7f2d8a248050>,
 <matplotlib.lines.Line2D at 0x7f2d8a2bd890>,
 <matplotlib.lines.Line2D at 0x7f2d8a2482d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a248410>,
 <matplotlib.lines.Line2D at 0x7f2d8a248550>,
 <matplotlib.lines.Line2D at 0x7f2d8a248690>,
 <matplotlib.lines.Line2D at 0x7f2d8a2487d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a248910>,
 <matplotlib.lines.Line2D at 0x7f2d8a248190>,
 <matplotlib.lines.Line2D at 0x7f2d8a248b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a248cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a248e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a248f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2520d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a252210>,
 <matplotlib.lines.Line2D at 0x7f2d8a248a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a252490>,
 <matplotlib.lines.Line2D at 0x7f2d8a2525d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a252710>,
 <matplotlib.lines.Line2D at 0x7f2d8a252850>,
 <matplotlib.lines.Line2D at 0x7f2d8a252990>,
 <matplotlib.lines.Line2D at 0x7f2d8a252ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a252350>,
 <matplotlib.lines.Line2D at 0x7f2d8a252d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a252e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a252fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a25c150>,
 <matplotlib.lines.Line2D at 0x7f2d8a25c290>,
 <matplotlib.lines.Line2D at 0x7f2d8a25c3d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a252c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a25c650>,
 <matplotlib.lines.Line2D at 0x7f2d8a25c790>,
 <matplotlib.lines.Line2D at 0x7f2d8a25c8d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a25ca10>,
 <matplotlib.lines.Line2D at 0x7f2d8a25cb50>,
 <matplotlib.lines.Line2D at 0x7f2d8a25cc90>,
 <matplotlib.lines.Line2D at 0x7f2d8a25c510>,
 <matplotlib.lines.Line2D at 0x7f2d8a25cf10>,
 <matplotlib.lines.Line2D at 0x7f2d8a266090>,
 <matplotlib.lines.Line2D at 0x7f2d8a2661d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a266310>,
 <matplotlib.lines.Line2D at 0x7f2d8a266450>,
 <matplotlib.lines.Line2D at 0x7f2d8a266590>,
 <matplotlib.lines.Line2D at 0x7f2d8a25cdd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a266810>,
 <matplotlib.lines.Line2D at 0x7f2d8a266950>,
 <matplotlib.lines.Line2D at 0x7f2d8a266a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a266bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a266d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a266e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2666d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a271110>,
 <matplotlib.lines.Line2D at 0x7f2d8a271250>,
 <matplotlib.lines.Line2D at 0x7f2d8a271390>,
 <matplotlib.lines.Line2D at 0x7f2d8a2714d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a271610>,
 <matplotlib.lines.Line2D at 0x7f2d8a271750>,
 <matplotlib.lines.Line2D at 0x7f2d8a266f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2719d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a271b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a271c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a271d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a271ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a27b050>,
 <matplotlib.lines.Line2D at 0x7f2d8a271890>,
 <matplotlib.lines.Line2D at 0x7f2d8a27b2d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a27b410>,
 <matplotlib.lines.Line2D at 0x7f2d8a27b550>,
 <matplotlib.lines.Line2D at 0x7f2d8a27b690>,
 <matplotlib.lines.Line2D at 0x7f2d8a27b7d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a27b910>,
 <matplotlib.lines.Line2D at 0x7f2d8a27b190>,
 <matplotlib.lines.Line2D at 0x7f2d8a27bb90>,
 <matplotlib.lines.Line2D at 0x7f2d8a27bcd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a27be10>,
 <matplotlib.lines.Line2D at 0x7f2d8a27bf50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2040d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a204210>,
 <matplotlib.lines.Line2D at 0x7f2d8a27ba50>,
 <matplotlib.lines.Line2D at 0x7f2d8a204490>,
 <matplotlib.lines.Line2D at 0x7f2d8a2045d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a204710>,
 <matplotlib.lines.Line2D at 0x7f2d8a204850>,
 <matplotlib.lines.Line2D at 0x7f2d8a204990>,
 <matplotlib.lines.Line2D at 0x7f2d8a204ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a204350>,
 <matplotlib.lines.Line2D at 0x7f2d8a204d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a204e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a204fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a20f150>,
 <matplotlib.lines.Line2D at 0x7f2d8a20f290>,
 <matplotlib.lines.Line2D at 0x7f2d8a20f3d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a204c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a20f650>,
 <matplotlib.lines.Line2D at 0x7f2d8a20f790>,
 <matplotlib.lines.Line2D at 0x7f2d8a20f8d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a20fa10>,
 <matplotlib.lines.Line2D at 0x7f2d8a20fb50>,
 <matplotlib.lines.Line2D at 0x7f2d8a20fc90>,
 <matplotlib.lines.Line2D at 0x7f2d8a20f510>,
 <matplotlib.lines.Line2D at 0x7f2d8a20ff10>,
 <matplotlib.lines.Line2D at 0x7f2d8a219090>,
 <matplotlib.lines.Line2D at 0x7f2d8a2191d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a219310>,
 <matplotlib.lines.Line2D at 0x7f2d8a219450>,
 <matplotlib.lines.Line2D at 0x7f2d8a219590>,
 <matplotlib.lines.Line2D at 0x7f2d8a20fdd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a219810>,
 <matplotlib.lines.Line2D at 0x7f2d8a219950>,
 <matplotlib.lines.Line2D at 0x7f2d8a219a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a219bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a219d10>,
 <matplotlib.lines.Line2D at 0x7f2d8a219e50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2196d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a223110>,
 <matplotlib.lines.Line2D at 0x7f2d8a223250>,
 <matplotlib.lines.Line2D at 0x7f2d8a223390>,
 <matplotlib.lines.Line2D at 0x7f2d8a2234d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a223610>,
 <matplotlib.lines.Line2D at 0x7f2d8a223750>,
 <matplotlib.lines.Line2D at 0x7f2d8a219f90>,
 <matplotlib.lines.Line2D at 0x7f2d8a2239d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a223b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a223c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a223d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a223ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a22d050>,
 <matplotlib.lines.Line2D at 0x7f2d8a223890>,
 <matplotlib.lines.Line2D at 0x7f2d8a22d2d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a22d410>,
 <matplotlib.lines.Line2D at 0x7f2d8a22d550>,
 <matplotlib.lines.Line2D at 0x7f2d8a22d690>,
 <matplotlib.lines.Line2D at 0x7f2d8a22d7d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a22d910>,
 <matplotlib.lines.Line2D at 0x7f2d8a22d190>,
 <matplotlib.lines.Line2D at 0x7f2d8a22db90>,
 <matplotlib.lines.Line2D at 0x7f2d8a22dcd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a22de10>,
 <matplotlib.lines.Line2D at 0x7f2d8a22df50>,
 <matplotlib.lines.Line2D at 0x7f2d8a2380d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a238210>,
 <matplotlib.lines.Line2D at 0x7f2d8a22da50>,
 <matplotlib.lines.Line2D at 0x7f2d8a238490>,
 <matplotlib.lines.Line2D at 0x7f2d8a2385d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a238710>,
 <matplotlib.lines.Line2D at 0x7f2d8a238850>,
 <matplotlib.lines.Line2D at 0x7f2d8a238990>,
 <matplotlib.lines.Line2D at 0x7f2d8a238ad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a238350>,
 <matplotlib.lines.Line2D at 0x7f2d8a238d50>,
 <matplotlib.lines.Line2D at 0x7f2d8a238e90>,
 <matplotlib.lines.Line2D at 0x7f2d8a238fd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1150>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1290>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c13d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a238c10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1650>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1790>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c18d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1510>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cc090>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cc1d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cc310>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cc450>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cc590>,
 <matplotlib.lines.Line2D at 0x7f2d8a1c1dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cc810>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cc950>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cca90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ccbd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ccd10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cce50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1cc6d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6110>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6250>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6390>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d64d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6610>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6750>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ccf90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d69d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0050>,
 <matplotlib.lines.Line2D at 0x7f2d8a1d6890>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e02d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0410>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0550>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0690>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e07d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0910>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0190>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ea0d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ea210>,
 <matplotlib.lines.Line2D at 0x7f2d8a1e0a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ea490>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ea5d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ea710>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ea850>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ea990>,
 <matplotlib.lines.Line2D at 0x7f2d8a1eaad0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ea350>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ead50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1eae90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1eafd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5150>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5290>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f53d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1eac10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5650>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5790>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f58d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5510>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ff090>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ff1d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ff310>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ff450>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ff590>,
 <matplotlib.lines.Line2D at 0x7f2d8a1f5dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ff810>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ff950>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ffa90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ffbd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ffd10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ffe50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1ff6d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a188110>,
 <matplotlib.lines.Line2D at 0x7f2d8a188250>,
 <matplotlib.lines.Line2D at 0x7f2d8a188390>,
 <matplotlib.lines.Line2D at 0x7f2d8a1884d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a188610>,
 <matplotlib.lines.Line2D at 0x7f2d8a188750>,
 <matplotlib.lines.Line2D at 0x7f2d8a1fff90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1889d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a188b10>,
 <matplotlib.lines.Line2D at 0x7f2d8a188c50>,
 <matplotlib.lines.Line2D at 0x7f2d8a188d90>,
 <matplotlib.lines.Line2D at 0x7f2d8a188ed0>,
 <matplotlib.lines.Line2D at 0x7f2d8a192050>,
 <matplotlib.lines.Line2D at 0x7f2d8a188890>,
 <matplotlib.lines.Line2D at 0x7f2d8a1922d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a192410>,
 <matplotlib.lines.Line2D at 0x7f2d8a192550>,
 <matplotlib.lines.Line2D at 0x7f2d8a192690>,
 <matplotlib.lines.Line2D at 0x7f2d8a1927d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a192910>,
 <matplotlib.lines.Line2D at 0x7f2d8a192190>,
 <matplotlib.lines.Line2D at 0x7f2d8a192b90>,
 <matplotlib.lines.Line2D at 0x7f2d8a192cd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a192e10>,
 <matplotlib.lines.Line2D at 0x7f2d8a192f50>,
 <matplotlib.lines.Line2D at 0x7f2d8a19e0d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a19e210>,
 <matplotlib.lines.Line2D at 0x7f2d8a192a50>,
 <matplotlib.lines.Line2D at 0x7f2d8a19e490>,
 <matplotlib.lines.Line2D at 0x7f2d8a19e5d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a19e710>,
 <matplotlib.lines.Line2D at 0x7f2d8a19e850>,
 <matplotlib.lines.Line2D at 0x7f2d8a19e990>,
 <matplotlib.lines.Line2D at 0x7f2d8a19ead0>,
 <matplotlib.lines.Line2D at 0x7f2d8a19e350>,
 <matplotlib.lines.Line2D at 0x7f2d8a19ed50>,
 <matplotlib.lines.Line2D at 0x7f2d8a19ee90>,
 <matplotlib.lines.Line2D at 0x7f2d8a19efd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7150>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7290>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a73d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a19ec10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7650>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7790>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a78d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7a10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7b50>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7c90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7510>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7f10>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1090>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b11d0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1310>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1450>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1590>,
 <matplotlib.lines.Line2D at 0x7f2d8a1a7dd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1810>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1950>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1a90>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1bd0>,
 <matplotlib.lines.Line2D at 0x7f2d8a1b1d10>,
 ...]
Traceback (most recent call last):

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/ipykernel/ipkernel.py", line 175, in do_execute
    shell.run_cell(code, store_history=store_history, silent=silent)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 2725, in run_cell
    self.events.trigger('post_execute')

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/events.py", line 74, in trigger
    func(*args, **kwargs)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/ipykernel/pylab/backend_inline.py", line 113, in flush_figures
    return show(True)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/ipykernel/pylab/backend_inline.py", line 36, in show
    display(figure_manager.canvas.figure)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/display.py", line 164, in display
    format_dict, md_dict = format(obj, include=include, exclude=exclude)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/formatters.py", line 145, in format
    data = formatter(obj)

  File "<decorator-gen-9>", line 2, in __call__

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/formatters.py", line 190, in catch_format_error
    r = method(self, *args, **kwargs)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/formatters.py", line 307, in __call__
    return printer(obj)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/pylabtools.py", line 227, in <lambda>
    png_formatter.for_type(Figure, lambda fig: print_figure(fig, 'png', **kwargs))

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/IPython/core/pylabtools.py", line 119, in print_figure
    fig.canvas.print_figure(bytes_io, **kw)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/backend_bases.py", line 2180, in print_figure
    **kwargs)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/backends/backend_agg.py", line 527, in print_png
    FigureCanvasAgg.draw(self)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/backends/backend_agg.py", line 474, in draw
    self.figure.draw(self.renderer)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/artist.py", line 61, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/figure.py", line 1159, in draw
    func(*args)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/artist.py", line 61, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/axes/_base.py", line 2324, in draw
    a.draw(renderer)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/artist.py", line 61, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/lines.py", line 731, in draw
    tpath, affine = transf_path.get_transformed_path_and_affine()

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/transforms.py", line 2712, in get_transformed_path_and_affine
    return self._transformed_path, self.get_affine()

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/transforms.py", line 2722, in get_affine
    return self._transform.get_affine()

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/transforms.py", line 2374, in get_affine
    return Affine2D(np.dot(self._b.get_affine().get_matrix(),

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/transforms.py", line 2375, in get_affine
    self._a.get_affine().get_matrix()))

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/transforms.py", line 1796, in __init__
    Affine2DBase.__init__(self, **kwargs)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/transforms.py", line 1641, in __init__
    Transform.__init__(self, *args, **kwargs)

  File "/opt/conda/envs/biospytial/lib/python2.7/site-packages/matplotlib/transforms.py", line 98, in __init__
    self._parents = WeakValueDictionary()

  File "/opt/conda/envs/biospytial/lib/python2.7/weakref.py", line 65, in __init__
    self._iterating = set()

KeyboardInterrupt

In [ ]:
ndata = pd.concat([nY,nX],axis=1)
plt.scatter(ndata.lon,ndata.lat,c=ndata.SppN)
plt.title("Species Richness")
plt.colorbar()

With a trend function

To do:

  • Fit GLM to the trend surface
  • Use the beta coeffs to create A and add it to the gaussian process.
  • Make plots with Basemap
  1. GLM

In [ ]:


In [ ]:
import statsmodels.api as sm

In [ ]:
glm_binom = sm.GLM(data, data.exog, family=sm.families.Binomial())
res = glm_binom.fit()
print(res.summary())

In [ ]:
from sketches.models import Country
us = Country.objects.filter(name__contains="United States")[1]

In [ ]:
from raster_api.models import ETOPO1
from raster_api.tools import RasterData

In [ ]:
usrast = RasterData(ETOPO1,us.geom)

In [ ]:
chiqui = usrast.getRaster()

In [ ]:
usrast.display_field()

In [ ]:
usrast = RasterField

In [ ]: