{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Assembly and analysis of Ficus RAD-seq data\n",
    "\n",
    "A RAD-seq library of 95 samples was prepared by Floragenex with the PstI restriction enzyme, followed by sonication and size selection. Stats reported by Floragenex include: AverageFragmentSize=386bp, Concentration=2.51ng/uL, Concentation=10nM. The library was sequenced on two lanes of Illumina HiSeq 3000 yielding 378,809,976 reads in lane 1, and 375,813,513 reads in lane 2, for a total of ~755M reads.  "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### This notebook\n",
    "This is a jupyter notebook, a tool used to create an executable document to full reproduce our analyses. This notebook contains all of the code to assemble the *Ficus* RAD-seq data set with *ipyrad*.\n",
    "We begin by demultiplexing [The raw data](#The-raw-data). The demultiplexed data (will be) archived and available online. If you downloaded the demultiplexed data you can skip to section [The Demultiplexed Data](#The-demultiplexed-data) and begin by loading in those data. The data were assembled under a range of parameter settings, which you can see in the [Within-sample assembly](#Within-sample-assembly) section. Several Samples were filtered from the data set due to low coverage. The data was then clustered across Samples and final output files were created [Across-sample assembly](#Across-sample-assembly)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Required software\n",
    "The following conda commands will locally install of the software required for this notebook. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "## conda install ipyrad -c ipyrad\n",
    "## conda install toytree -c eaton-lab"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import ipyrad as ip\n",
    "import toyplot"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "ipyrad v.0.6.20\n",
      "toyplot v.0.14.4\n"
     ]
    }
   ],
   "source": [
    "## print software versions\n",
    "print 'ipyrad v.{}'.format(ip.__version__)\n",
    "print 'toyplot v.{}'.format(toyplot.__version__)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Cluster info\n",
    "I started an ipcluster instance on a 40 core workstation with the ipcluster command as shown below. The `cluster_info()` command shows that ipyrad is able to find all 40 cores on the cluster. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "##\n",
    "## ipcluster start --n=40\n",
    "##"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import ipyparallel as ipp\n",
    "ipyclient = ipp.Client(profile=\"testing\")\n",
    "#print ip.cluster_info()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## The raw data\n",
    "The data came to us as two large 20GB files. The barcodes file was provided by Floragenex and maps sample names to barcodes that are contained inline in the sequences, and are 10bp in length. The barcodes are printed a little further below. I ran the program *fastQC* on the raw data files to do a quality check, the results of which are available here [lane1-fastqc](link) and here [lane2-fastqc](link). Overall, quality scores were very high and there was little (but some) adapter contamination, which we will filter out in the ipyrad analysis. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "## The reference genome link\n",
    "reference = \"\"\"\\\n",
    "ftp://ftp.ncbi.nlm.nih.gov/genomes/all/GCA/\\\n",
    "002/002/945/GCA_002002945.1_F.carica_assembly01/\\\n",
    "GCA_002002945.1_F.carica_assembly01_genomic.fna.gz\\\n",
    "\"\"\"\n",
    "\n",
    "## Download the reference genome of F. carica\n",
    "# ! wget $reference\n",
    "\n",
    "## decompress it\n",
    "# ! gunzip ./GCA_002002945.1_F.carica_assembly01_genomic.fna.gz"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "## Locations of the raw data and barcodes file\n",
    "lane1data = \"~/Documents/RADSEQ_DATA/Ficus/Ficus-1_S1_L001_R1_001.fastq.gz\"\n",
    "lane2data = \"~/Documents/RADSEQ_DATA/Ficus/Ficus-2_S2_L002_R1_001.fastq.gz\"\n",
    "barcodes = \"~/Documents/RADSEQ_DATA/barcodes/Ficus_Jander_2016_95barcodes.txt\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Create an ipyrad Assembly object for each lane of data\n",
    "We set the location to the data and barcodes info for each object, and set the max barcode mismatch parameter to zero (strict), allowing no mismatches. You can see the full barcode information [at this link](https://github.com/dereneaton/ficus-rad/blob/master/Ficus_Jander_2016_95barcodes.txt)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  New Assembly: lane1\n",
      "  New Assembly: lane2\n"
     ]
    }
   ],
   "source": [
    "## create an object to demultiplex each lane\n",
    "demux1 = ip.Assembly(\"lane1\")\n",
    "demux2 = ip.Assembly(\"lane2\")\n",
    "\n",
    "## set path to data, bcodes, and max_mismatch params\n",
    "demux1.set_params(\"project_dir\", \"./ficus_demux_reads\")\n",
    "demux1.set_params(\"raw_fastq_path\", lane1data)\n",
    "demux1.set_params(\"barcodes_path\", barcodes)\n",
    "demux1.set_params(\"max_barcode_mismatch\", 0)\n",
    "\n",
    "## set path to data, bcodes, and max_mismatch params\n",
    "demux2.set_params(\"project_dir\", \"./ficus_demux_reads\")\n",
    "demux2.set_params(\"raw_fastq_path\", lane2data)\n",
    "demux2.set_params(\"barcodes_path\", barcodes)\n",
    "demux2.set_params(\"max_barcode_mismatch\", 0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Demultiplex raw data from both lanes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: lane1\n",
      "  [####################] 100%  chunking large files  | 0:21:55 | s1 | \n",
      "  [####################] 100%  sorting reads         | 0:43:43 | s1 | \n",
      "  [####################] 100%  writing/compressing   | 0:14:25 | s1 | \n",
      "\n",
      "  Assembly: lane2\n",
      "  [####################] 100%  chunking large files  | 0:27:44 | s1 | \n",
      "  [####################] 100%  sorting reads         | 0:45:12 | s1 | \n",
      "  [####################] 100%  writing/compressing   | 0:15:53 | s1 | \n"
     ]
    }
   ],
   "source": [
    "demux1.run(\"1\")\n",
    "demux2.run(\"1\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## The demultiplexed data\n",
    "Now we have two directories with demultiplexed data, each with one gzipped fastq file corresponding to all of the reads matching to a particular Sample's barcode from that lane of sequencing. These are the data that (will be uploaded) to Genbank SRA when we publish. We will load the sorted fastq data at this step, to copy the same procedure that one would take if they were starting from access to the demultiplexed data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "lib1_fastqs = \"./ficus_demux_reads/lane1_fastqs/*.gz\"\n",
    "lib2_fastqs = \"./ficus_demux_reads/lane2_fastqs/*.gz\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: lib1\n",
      "  [####################] 100%  loading reads         | 0:01:47 | s1 | \n",
      "\n",
      "  Assembly: lib2\n",
      "  [####################] 100%  loading reads         | 0:00:34 | s1 | \n"
     ]
    }
   ],
   "source": [
    "lib1 = ip.Assembly(\"lib1\", quiet=True)\n",
    "lib1.set_params(\"sorted_fastq_path\", lib1_fastqs)\n",
    "lib1.run(\"1\")\n",
    "\n",
    "lib2 = ip.Assembly(\"lib2\", quiet=True)\n",
    "lib2.set_params(\"sorted_fastq_path\", lib2_fastqs)\n",
    "lib2.run(\"1\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Merge the two lanes of data into one Assembly\n",
    "We will join these two demultiplexed libraries into a single analysis that has the set of parameters we will use to assemble the data set. To do this we use the `merge()` command in ipyrad. On this merged Assembly we will then set a number of parameter settings that we will use to assemble the data. \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  0   assembly_name               merged                                       \n",
      "  1   project_dir                 ./analysis-ipyrad                            \n",
      "  2   raw_fastq_path              Merged: lane1, lane2                         \n",
      "  3   barcodes_path               Merged: lane1, lane2                         \n",
      "  4   sorted_fastq_path           Merged: lane1, lane2                         \n",
      "  5   assembly_method             denovo                                       \n",
      "  6   reference_sequence                                                       \n",
      "  7   datatype                    rad                                          \n",
      "  8   restriction_overhang        ('TGCAG', '')                                \n",
      "  9   max_low_qual_bases          5                                            \n",
      "  10  phred_Qscore_offset         43                                           \n",
      "  11  mindepth_statistical        6                                            \n",
      "  12  mindepth_majrule            6                                            \n",
      "  13  maxdepth                    10000                                        \n",
      "  14  clust_threshold             0.85                                         \n",
      "  15  max_barcode_mismatch        0                                            \n",
      "  16  filter_adapters             3                                            \n",
      "  17  filter_min_trim_len         60                                           \n",
      "  18  max_alleles_consens         2                                            \n",
      "  19  max_Ns_consens              (5, 5)                                       \n",
      "  20  max_Hs_consens              (5, 5)                                       \n",
      "  21  min_samples_locus           4                                            \n",
      "  22  max_SNPs_locus              (20, 20)                                     \n",
      "  23  max_Indels_locus            (8, 8)                                       \n",
      "  24  max_shared_Hs_locus         4                                            \n",
      "  25  trim_reads                  (0, 0, 0, 0)                                 \n",
      "  26  trim_loci                   (0, 8, 0, 0)                                 \n",
      "  27  output_formats              ('l', 'k', 's', 'a', 'p', 'n', 'v')          \n",
      "  28  pop_assign_file                                                          \n"
     ]
    }
   ],
   "source": [
    "## named corresponding to some params we are changing\n",
    "data = ip.merge(\"merged\", [demux1, demux2])\n",
    "\n",
    "## set several non-default parameters\n",
    "data.set_params(\"project_dir\", \"analysis-ipyrad\")\n",
    "data.set_params(\"filter_adapters\", 3)\n",
    "data.set_params(\"phred_Qscore_offset\", 43)\n",
    "data.set_params(\"max_Hs_consens\", (5, 5))\n",
    "data.set_params(\"max_shared_Hs_locus\", 4)\n",
    "data.set_params(\"filter_min_trim_len\", 60)\n",
    "data.set_params(\"trim_loci\", (0, 8, 0, 0))\n",
    "data.set_params(\"output_formats\", list(\"lksapnv\"))\n",
    "\n",
    "## print parameters for prosperity's sake\n",
    "data.get_params()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Create branch `ficus` and drop the control Sample\n",
    "First we will drop the control sequence included for quality checking by Floragenex (FGXCONTROL). To do this we create a new branch using the argument `subsample` to include all Samples except FGXCONTROL. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "## drop the Floragenex control sample if it is in the data\n",
    "snames = [i for i in data.samples if i != \"FGXCONTROL\"]\n",
    "\n",
    "## working branch\n",
    "data = data.branch(\"ficus\", subsamples=snames)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### A summary of the number of reads per Sample."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "summary of raw read covereage\n",
      "count          95\n",
      "mean      5149596\n",
      "std       7716026\n",
      "min         14703\n",
      "25%        289541\n",
      "50%       1890328\n",
      "75%       7402440\n",
      "max      51339646\n",
      "Name: reads_raw, dtype: int64\n"
     ]
    }
   ],
   "source": [
    "print \"summary of raw read covereage\"\n",
    "print data.stats.reads_raw.describe().astype(int)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Filtering options\n",
    "From looking closely at the data it appears there are som poor quality reads with adapter contamination, and also that there are some conspicuous long strings of poly repeats, which are probably due to the library being put on the sequencer in the wrong concentration (the facility failed to do a qPCR quantification). Setting the filter parameter in ipyrad to strict (2) uses 'cutadapt' to filter the reads. By default ipyrad would look just for the Illumina universal adapter, but I'm also adding a few additional poly-{A,C,G,T} sequences to be trimmed. These appeared to be somewhat common in the raw data, followed by nonsense. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: ficus\n",
      "  [####################] 100%  concatenating inputs  | 0:02:43 | s2 | \n",
      "  [####################] 100%  processing reads      | 0:51:52 | s2 | \n"
     ]
    }
   ],
   "source": [
    "## run step 2\n",
    "data.run(\"2\", force=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Within-sample assembly\n",
    "Steps 2-5 of ipyrad function to filter and cluster reads, and to call consensus haplotypes within samples. We'll look more closely at the stats for each step after it's finished. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### _reference_ & _de novo_ assemblies with ipyrad"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "collapsed": true,
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "## create new branches for assembly method\n",
    "ficus_d = data.branch(\"ficus_d\")\n",
    "ficus_r = data.branch(\"ficus_r\")\n",
    "\n",
    "## set reference info\n",
    "reference = \"GCA_002002945.1_F.carica_assembly01_genomic.fna\"\n",
    "ficus_r.set_params(\"reference_sequence\", reference)\n",
    "ficus_r.set_params(\"assembly_method\", \"reference\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "## map reads to reference genome\n",
    "ficus_r.run(\"3\", force=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: ficus_d\n",
      "  [####################] 100%  dereplicating         | 0:04:31 | s3 | \n",
      "  [####################] 100%  clustering            | 0:13:54 | s3 | \n",
      "  [####################] 100%  building clusters     | 0:00:46 | s3 | \n",
      "  [####################] 100%  chunking              | 0:00:11 | s3 | \n",
      "  [####################] 100%  aligning              | 0:23:58 | s3 | \n",
      "  [####################] 100%  concatenating         | 0:00:14 | s3 | \n"
     ]
    }
   ],
   "source": [
    "## cluster reads denovo\n",
    "ficus_d.run(\"3\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: ficus_d\n",
      "  [####################] 100%  inferring [H, E]      | 0:14:01 | s4 | \n"
     ]
    }
   ],
   "source": [
    "ficus_d.run(\"4\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Branch to make consensus calls at different mindepth settings\n",
    "Now that the reads are filtered and clustered within each Sample we want to try applying several different parameter settings for downstream analyses. One major difference will be in the minimum depth of sequencing we require to make a confident base call. We will leave one Assembly with the default setting of 6, which is somewhat conservative. We will also create a 'lowdepth' Assembly that allows base calls for depths as low as 2. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "ficus_dhi = ficus_d.branch(\"ficus_dhi\")\n",
    "ficus_dlo = ficus_d.branch(\"ficus_dlo\")\n",
    "ficus_dlo.set_params(\"mindepth_majrule\", 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: ficus_dlo\n",
      "  [####################] 100%  calculating depths    | 0:00:23 | s5 | \n",
      "  [####################] 100%  chunking clusters     | 0:00:21 | s5 | \n",
      "  [####################] 100%  consens calling       | 0:15:17 | s5 | \n",
      "\n",
      "  Assembly: ficus_dhi\n",
      "  [####################] 100%  calculating depths    | 0:00:23 | s5 | \n",
      "  [####################] 100%  chunking clusters     | 0:00:21 | s5 | \n",
      "  [####################] 100%  consens calling       | 0:14:24 | s5 | \n"
     ]
    }
   ],
   "source": [
    "ficus_dlo.run(\"5\")\n",
    "ficus_dhi.run(\"5\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plot consens reads\n",
    "Compare hidepth and lodepth assemblies. The difference is not actually that great. Regardless, the samples with very few reads are going to recover very few clusters. \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div align=\"center\" class=\"toyplot\" id=\"t97a2d0f4f74441f790862d6cc0dddf76\"><svg class=\"toyplot-canvas-Canvas\" height=\"300.0px\" id=\"t4ab2f767943d4de8a4231c25ddcfb787\" preserveAspectRatio=\"xMidYMid meet\" style=\"background-color:transparent;fill:rgb(16.1%,15.3%,14.1%);fill-opacity:1.0;font-family:Helvetica;font-size:12px;opacity:1.0;stroke:rgb(16.1%,15.3%,14.1%);stroke-opacity:1.0;stroke-width:1.0\" viewBox=\"0 0 700.0 300.0\" width=\"700.0px\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:toyplot=\"http://www.sandia.gov/toyplot\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"><g class=\"toyplot-coordinates-Cartesian\" id=\"t5935bc4e46e7471b87e30c344c267f53\"><clipPath id=\"td9aa7ad4e9aa4bc09f3ed20f928c1e6c\"><rect height=\"220.0\" width=\"620.0\" x=\"40.0\" y=\"40.0\"></rect></clipPath><g clip-path=\"url(#td9aa7ad4e9aa4bc09f3ed20f928c1e6c)\"><g class=\"toyplot-mark-BarBoundaries\" id=\"t5fb77395b87f40c381c495f7c65fc09d\" style=\"stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\"><g class=\"toyplot-Series\"><rect class=\"toyplot-Datum\" height=\"14.306286879010969\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842124\" x=\"50.0\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"19.455132229024628\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842124\" x=\"56.315789473684212\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"79.560935142174202\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"62.631578947368425\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"14.401307643263493\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"68.94736842105263\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"2.8358528605926949\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"75.263157894736835\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"1.5400256506829919\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"81.578947368421055\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"6.1497635558444017\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"87.89473684210526\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"5.9715380809251712\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"94.21052631578948\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"14.529314890443032\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"100.52631578947368\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"1.6611401999374493\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"106.84210526315789\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"1.214591841507314\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"113.15789473684211\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"1.5597190733259936\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842337\" x=\"119.4736842105263\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"0.7252102888286629\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"125.78947368421053\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"14.100490612391582\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"132.10526315789474\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"6.0084632483808207\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"138.42105263157893\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"3.3606825740288002\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"144.73684210526315\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"38.221487001110205\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"151.05263157894737\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"38.35343293281835\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"157.36842105263156\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"70.441895787330708\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"163.68421052631578\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"11.029793686781034\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"170.0\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"12.741644450024239\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"176.31578947368422\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"29.812887868113137\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"182.63157894736841\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"4.7987947625342429\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842479\" x=\"188.9473684210526\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"22.512536094351162\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"195.26315789473685\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"1.6739409246553976\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"201.57894736842104\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"0.76902815420933734\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842479\" x=\"207.89473684210526\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"78.758428169471728\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"214.21052631578951\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"26.106585726699592\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"220.52631578947367\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"7.5760596907640263\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"226.84210526315789\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"18.330145460543008\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"233.15789473684211\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"7.6878198642630764\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"239.4736842105263\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"6.7971848252331597\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"245.78947368421052\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"1.9604802241111088\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"252.10526315789474\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.123911015269755\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"258.42105263157896\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"33.632919525290049\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"264.73684210526312\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"28.720395246992439\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"271.05263157894734\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"36.980309039034807\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"277.36842105263156\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"26.503408192956158\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"283.68421052631578\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"6.5766184916315069\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"290.0\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"23.454866367818966\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"296.31578947368422\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"20.541716823352431\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"302.63157894736844\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"81.147732671634344\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"308.94736842105266\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"78.232613784903492\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"315.26315789473682\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.238132866599187\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"321.57894736842104\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"2.7639718679457417\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"327.89473684210526\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"6.7479512686256555\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"334.21052631578948\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"28.616020106984507\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"340.5263157894737\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"25.323279841074054\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"346.84210526315786\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"21.440721567005625\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"353.15789473684214\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.519256474828126\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"359.47368421052636\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"22.572108697846261\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"365.78947368421052\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.261764973770795\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"372.10526315789474\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"29.052229418527077\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841058\" x=\"378.42105263157902\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"37.329374955382093\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"384.73684210526312\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"27.886378798061173\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"391.05263157894734\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"31.150563601139254\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"397.36842105263156\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"1.8836758758034193\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"403.68421052631578\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"0.021662764907290466\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"410.0\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.428666730670272\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"416.31578947368422\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"0.093051421988178618\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"422.63157894736844\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"35.117803592572614\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"428.9473684210526\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"10.624109180335125\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"435.26315789473682\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"28.475704470653113\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"441.57894736842104\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"28.576140926132439\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"447.89473684210526\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"28.418593544988397\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"454.21052631578948\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"30.57059230430275\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"460.5263157894737\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"101.53288678497489\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"466.84210526315792\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"4.9248326674494649\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"473.15789473684208\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"37.84780430645921\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"479.4736842105263\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"33.86628658360965\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"485.78947368421052\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.593106809739396\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"492.10526315789468\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.725052741447513\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"498.42105263157896\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"19.957806841987349\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"504.73684210526318\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"30.223003394653688\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"511.05263157894734\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"39.785637094530898\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"517.36842105263156\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"18.013573691556701\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"523.68421052631572\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"1.1761896673534693\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"530.0\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"0.67597673222115873\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"536.31578947368428\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"0.18413350171209686\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"542.63157894736844\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"40.320313519288447\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"548.94736842105272\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"36.780420799208287\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"555.26315789473688\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"36.8124226110032\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"561.57894736842104\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"18.211492589118848\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"567.89473684210532\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"45.495252654304096\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"574.21052631578948\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.11800298847686\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"580.52631578947364\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"32.231732504240227\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"586.84210526315792\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"29.78728641867724\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"593.15789473684208\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"43.668687704165421\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"599.47368421052624\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"27.258650951315389\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"605.78947368421052\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"33.329148481021662\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"612.10526315789468\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"48.316827783480647\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"618.42105263157896\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"0.13243826727421038\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"624.73684210526312\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"6.544124344270557\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"631.0526315789474\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"0.69370081259984318\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.315789473684049\" x=\"637.36842105263167\" y=\"148.46711321502511\"></rect><rect class=\"toyplot-Datum\" height=\"44.370758221388513\" style=\"fill:rgb(40%,76.1%,64.7%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"643.68421052631572\" y=\"148.46711321502511\"></rect></g><g class=\"toyplot-Series\"><rect class=\"toyplot-Datum\" height=\"10.743746722891416\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842124\" x=\"50.0\" y=\"137.72336649213369\"></rect><rect class=\"toyplot-Datum\" height=\"14.731172472533842\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842124\" x=\"56.315789473684212\" y=\"133.73594074249127\"></rect><rect class=\"toyplot-Datum\" height=\"66.570661231282017\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"62.631578947368425\" y=\"81.896451983743091\"></rect><rect class=\"toyplot-Datum\" height=\"11.570378138331535\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"68.94736842105263\" y=\"136.89673507669357\"></rect><rect class=\"toyplot-Datum\" height=\"2.0619013507226498\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"75.263157894736835\" y=\"146.40521186430246\"></rect><rect class=\"toyplot-Datum\" height=\"1.0875692654599618\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"81.578947368421055\" y=\"147.37954394956515\"></rect><rect class=\"toyplot-Datum\" height=\"4.6875269246012863\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"87.89473684210526\" y=\"143.77958629042382\"></rect><rect class=\"toyplot-Datum\" height=\"4.4068956519384699\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"94.21052631578948\" y=\"144.06021756308664\"></rect><rect class=\"toyplot-Datum\" height=\"11.289746865668718\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"100.52631578947368\" y=\"137.17736634935639\"></rect><rect class=\"toyplot-Datum\" height=\"1.1338488086710186\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"106.84210526315789\" y=\"147.33326440635409\"></rect><rect class=\"toyplot-Datum\" height=\"0.82220039534547595\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"113.15789473684211\" y=\"147.64491281967963\"></rect><rect class=\"toyplot-Datum\" height=\"1.1343411442371121\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842337\" x=\"119.4736842105263\" y=\"147.332772070788\"></rect><rect class=\"toyplot-Datum\" height=\"0.47018046560174298\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842053\" x=\"125.78947368421053\" y=\"147.99693274942337\"></rect><rect class=\"toyplot-Datum\" height=\"11.000745888382596\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"132.10526315789474\" y=\"137.46636732664251\"></rect><rect class=\"toyplot-Datum\" height=\"4.5152094764749791\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"138.42105263157893\" y=\"143.95190373855013\"></rect><rect class=\"toyplot-Datum\" height=\"2.2883757111171974\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"144.73684210526315\" y=\"146.17873750390791\"></rect><rect class=\"toyplot-Datum\" height=\"31.751705327316998\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"151.05263157894737\" y=\"116.71540788770811\"></rect><rect class=\"toyplot-Datum\" height=\"34.072082850229066\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"157.36842105263156\" y=\"114.39503036479604\"></rect><rect class=\"toyplot-Datum\" height=\"59.176765699965799\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"163.68421052631578\" y=\"89.29034751505931\"></rect><rect class=\"toyplot-Datum\" height=\"8.7355099488709698\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"170.0\" y=\"139.73160326615414\"></rect><rect class=\"toyplot-Datum\" height=\"9.8314489189541803\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"176.31578947368422\" y=\"138.63566429607093\"></rect><rect class=\"toyplot-Datum\" height=\"26.043566774242009\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"182.63157894736841\" y=\"122.4235464407831\"></rect><rect class=\"toyplot-Datum\" height=\"3.5645094983839272\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842479\" x=\"188.9473684210526\" y=\"144.90260371664118\"></rect><rect class=\"toyplot-Datum\" height=\"17.682724191154222\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"195.26315789473685\" y=\"130.78438902387089\"></rect><rect class=\"toyplot-Datum\" height=\"1.1476342045211254\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"201.57894736842104\" y=\"147.31947901050398\"></rect><rect class=\"toyplot-Datum\" height=\"0.4967665861698265\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842479\" x=\"207.89473684210526\" y=\"147.97034662885528\"></rect><rect class=\"toyplot-Datum\" height=\"68.130380304608039\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"214.21052631578951\" y=\"80.336732910417069\"></rect><rect class=\"toyplot-Datum\" height=\"21.176337368023312\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"220.52631578947367\" y=\"127.2907758470018\"></rect><rect class=\"toyplot-Datum\" height=\"5.6785984191105285\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"226.84210526315789\" y=\"142.78851479591458\"></rect><rect class=\"toyplot-Datum\" height=\"14.411154354584994\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841911\" x=\"233.15789473684211\" y=\"134.05595886044011\"></rect><rect class=\"toyplot-Datum\" height=\"5.5934243661795051\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"239.4736842105263\" y=\"142.8736888488456\"></rect><rect class=\"toyplot-Datum\" height=\"5.2241726916231528\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"245.78947368421052\" y=\"143.24294052340196\"></rect><rect class=\"toyplot-Datum\" height=\"0.97827076979129401\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"252.10526315789474\" y=\"147.48884244523381\"></rect><rect class=\"toyplot-Datum\" height=\"27.86816238211641\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"258.42105263157896\" y=\"120.5989508329087\"></rect><rect class=\"toyplot-Datum\" height=\"28.012909038542489\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"264.73684210526312\" y=\"120.45420417648262\"></rect><rect class=\"toyplot-Datum\" height=\"24.167768267495759\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"271.05263157894734\" y=\"124.29934494752935\"></rect><rect class=\"toyplot-Datum\" height=\"33.565961888303832\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"277.36842105263156\" y=\"114.90115132672128\"></rect><rect class=\"toyplot-Datum\" height=\"22.153623466682433\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"283.68421052631578\" y=\"126.31348974834268\"></rect><rect class=\"toyplot-Datum\" height=\"4.9642195127354967\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"290.0\" y=\"143.50289370228961\"></rect><rect class=\"toyplot-Datum\" height=\"20.680555452985658\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"296.31578947368422\" y=\"127.78655776203945\"></rect><rect class=\"toyplot-Datum\" height=\"16.367203558601489\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"302.63157894736844\" y=\"132.09990965642362\"></rect><rect class=\"toyplot-Datum\" height=\"71.106056465966091\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"308.94736842105266\" y=\"77.361056749059017\"></rect><rect class=\"toyplot-Datum\" height=\"66.087680040962326\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"315.26315789473682\" y=\"82.379433174062783\"></rect><rect class=\"toyplot-Datum\" height=\"29.395387308081439\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"321.57894736842104\" y=\"119.07172590694367\"></rect><rect class=\"toyplot-Datum\" height=\"1.8959842649553309\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"327.89473684210526\" y=\"146.57112895006978\"></rect><rect class=\"toyplot-Datum\" height=\"4.9391103988656937\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"334.21052631578948\" y=\"143.52800281615941\"></rect><rect class=\"toyplot-Datum\" height=\"24.096871945980965\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"340.5263157894737\" y=\"124.37024126904414\"></rect><rect class=\"toyplot-Datum\" height=\"22.569647020015921\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"346.84210526315786\" y=\"125.89746619500919\"></rect><rect class=\"toyplot-Datum\" height=\"17.857010981544818\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"353.15789473684214\" y=\"130.61010223348029\"></rect><rect class=\"toyplot-Datum\" height=\"29.590844527813275\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"359.47368421052636\" y=\"118.87626868721183\"></rect><rect class=\"toyplot-Datum\" height=\"19.960268519817731\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"365.78947368421052\" y=\"128.50684469520738\"></rect><rect class=\"toyplot-Datum\" height=\"29.224054531087305\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"372.10526315789474\" y=\"119.2430586839378\"></rect><rect class=\"toyplot-Datum\" height=\"26.534917669184978\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841058\" x=\"378.42105263157902\" y=\"121.93219554584013\"></rect><rect class=\"toyplot-Datum\" height=\"33.085934711380588\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"384.73684210526312\" y=\"115.38117850364452\"></rect><rect class=\"toyplot-Datum\" height=\"25.293247371543515\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"391.05263157894734\" y=\"123.17386584348159\"></rect><rect class=\"toyplot-Datum\" height=\"28.385114726495317\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"397.36842105263156\" y=\"120.08199848852979\"></rect><rect class=\"toyplot-Datum\" height=\"1.4203881081267582\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"403.68421052631578\" y=\"147.04672510689835\"></rect><rect class=\"toyplot-Datum\" height=\"0.012308389151883148\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"410.0\" y=\"148.45480482587323\"></rect><rect class=\"toyplot-Datum\" height=\"29.017273593335759\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"416.31578947368422\" y=\"119.44983962168935\"></rect><rect class=\"toyplot-Datum\" height=\"0.057110925664716206\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"422.63157894736844\" y=\"148.41000228936039\"></rect><rect class=\"toyplot-Datum\" height=\"31.708872133068468\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"428.9473684210526\" y=\"116.75824108195664\"></rect><rect class=\"toyplot-Datum\" height=\"8.4479859782830999\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"435.26315789473682\" y=\"140.01912723674201\"></rect><rect class=\"toyplot-Datum\" height=\"26.728897882218575\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"441.57894736842104\" y=\"121.73821533280653\"></rect><rect class=\"toyplot-Datum\" height=\"26.493561481634686\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"447.89473684210526\" y=\"121.97355173339042\"></rect><rect class=\"toyplot-Datum\" height=\"24.915133656797806\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"454.21052631578948\" y=\"123.5519795582273\"></rect><rect class=\"toyplot-Datum\" height=\"28.069527628641154\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"460.5263157894737\" y=\"120.39758558638395\"></rect><rect class=\"toyplot-Datum\" height=\"86.56539324072503\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"466.84210526315792\" y=\"61.901719974300072\"></rect><rect class=\"toyplot-Datum\" height=\"3.7796601407587502\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"473.15789473684208\" y=\"144.68745307426636\"></rect><rect class=\"toyplot-Datum\" height=\"34.287725828169968\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"479.4736842105263\" y=\"114.17938738685514\"></rect><rect class=\"toyplot-Datum\" height=\"30.302269420791845\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"485.78947368421052\" y=\"118.16484379423326\"></rect><rect class=\"toyplot-Datum\" height=\"29.679464929706796\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"492.10526315789468\" y=\"118.78764828531831\"></rect><rect class=\"toyplot-Datum\" height=\"29.628754366401068\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"498.42105263157896\" y=\"118.83835884862404\"></rect><rect class=\"toyplot-Datum\" height=\"16.590231570033524\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"504.73684210526318\" y=\"131.87688164499158\"></rect><rect class=\"toyplot-Datum\" height=\"27.515157781240546\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842195\" x=\"511.05263157894734\" y=\"120.95195543378456\"></rect><rect class=\"toyplot-Datum\" height=\"30.341656266077834\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"517.36842105263156\" y=\"118.12545694894727\"></rect><rect class=\"toyplot-Datum\" height=\"14.438232810719143\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"523.68421052631572\" y=\"134.02888040430597\"></rect><rect class=\"toyplot-Datum\" height=\"0.84386316025279484\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"530.0\" y=\"147.62325005477231\"></rect><rect class=\"toyplot-Datum\" height=\"0.47805783465895502\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"536.31578947368428\" y=\"147.98905538036615\"></rect><rect class=\"toyplot-Datum\" height=\"0.10437514000796\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"542.63157894736844\" y=\"148.36273807501715\"></rect><rect class=\"toyplot-Datum\" height=\"36.230974307468486\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"548.94736842105272\" y=\"112.23613890755662\"></rect><rect class=\"toyplot-Datum\" height=\"33.193263864784967\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"555.26315789473688\" y=\"115.27384935024014\"></rect><rect class=\"toyplot-Datum\" height=\"33.182432482331336\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"561.57894736842104\" y=\"115.28468073269377\"></rect><rect class=\"toyplot-Datum\" height=\"14.488943374024871\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"567.89473684210532\" y=\"133.97816984100024\"></rect><rect class=\"toyplot-Datum\" height=\"40.379886122783603\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"574.21052631578948\" y=\"108.08722709224151\"></rect><rect class=\"toyplot-Datum\" height=\"28.174887439781202\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"580.52631578947364\" y=\"120.29222577524391\"></rect><rect class=\"toyplot-Datum\" height=\"29.221592853256951\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"586.84210526315792\" y=\"119.24552036176816\"></rect><rect class=\"toyplot-Datum\" height=\"27.685013551536457\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"593.15789473684208\" y=\"120.78209966348865\"></rect><rect class=\"toyplot-Datum\" height=\"37.444089142277591\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"599.47368421052624\" y=\"111.02302407274752\"></rect><rect class=\"toyplot-Datum\" height=\"24.764971309144897\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"605.78947368421052\" y=\"123.70214190588021\"></rect><rect class=\"toyplot-Datum\" height=\"30.446523741651845\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"612.10526315789468\" y=\"118.02058947337326\"></rect><rect class=\"toyplot-Datum\" height=\"40.658055717616023\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736841627\" x=\"618.42105263157896\" y=\"107.80905749740909\"></rect><rect class=\"toyplot-Datum\" height=\"0.078773690572035093\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"624.73684210526312\" y=\"148.38833952445307\"></rect><rect class=\"toyplot-Datum\" height=\"5.1183205449170259\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"631.0526315789474\" y=\"143.34879267010808\"></rect><rect class=\"toyplot-Datum\" height=\"0.50415161966094502\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.315789473684049\" x=\"637.36842105263167\" y=\"147.96296159536416\"></rect><rect class=\"toyplot-Datum\" height=\"39.101290657686491\" style=\"fill:rgb(98.8%,55.3%,38.4%);fill-opacity:1.0;opacity:1.0;stroke:rgb(100%,100%,100%);stroke-opacity:1.0;stroke-width:1.0\" width=\"6.3157894736842763\" x=\"643.68421052631572\" y=\"109.36582255733862\"></rect></g></g></g><g class=\"toyplot-coordinates-Axis\" id=\"t0773ad32ba0044c0b4971be3f58d915c\" transform=\"translate(50.0,250.0)translate(0,10.0)\"><line style=\"\" x1=\"0\" x2=\"600.0\" y1=\"0\" y2=\"0\"></line><g><text style=\"font-weight:normal;stroke:none;text-anchor:middle\" transform=\"translate(3.1578947368421053,6)translate(0,7.5)\"><tspan style=\"font-size:10.0px\">0</tspan></text><text style=\"font-weight:normal;stroke:none;text-anchor:middle\" transform=\"translate(192.6315789473684,6)translate(0,7.5)\"><tspan style=\"font-size:10.0px\">30</tspan></text><text style=\"font-weight:normal;stroke:none;text-anchor:middle\" transform=\"translate(382.10526315789474,6)translate(0,7.5)\"><tspan style=\"font-size:10.0px\">60</tspan></text><text style=\"font-weight:normal;stroke:none;text-anchor:middle\" transform=\"translate(571.578947368421,6)translate(0,7.5)\"><tspan style=\"font-size:10.0px\">90</tspan></text></g><g class=\"toyplot-coordinates-Axis-coordinates\" style=\"visibility:hidden\" transform=\"\"><line style=\"stroke:rgb(43.9%,50.2%,56.5%);stroke-opacity:1.0;stroke-width:1.0\" x1=\"0\" x2=\"0\" y1=\"-3.0\" y2=\"4.5\"></line><text style=\"alignment-baseline:alphabetic;fill:rgb(43.9%,50.2%,56.5%);fill-opacity:1.0;font-size:10px;font-weight:normal;stroke:none;text-anchor:middle\" x=\"0\" y=\"-6\"></text></g></g><g class=\"toyplot-coordinates-Axis\" id=\"td6a7c95cd6cf4d65ba4085b537892676\" transform=\"translate(50.0,250.0)rotate(-90.0)translate(0,-10.0)\"><line style=\"\" x1=\"0\" x2=\"188.09828002569992\" y1=\"0\" y2=\"0\"></line><g><line style=\"\" x1=\"3.0657735699498065\" x2=\"3.0657735699498065\" y1=\"0\" y2=\"5\"></line><line style=\"\" x1=\"52.29933017746235\" x2=\"52.29933017746235\" y1=\"0\" y2=\"5\"></line><line style=\"\" x1=\"101.53288678497489\" x2=\"101.53288678497489\" y1=\"0\" y2=\"5\"></line><line style=\"\" x1=\"150.76644339248745\" x2=\"150.76644339248745\" y1=\"0\" y2=\"5\"></line><line style=\"\" x1=\"200.0\" x2=\"200.0\" y1=\"0\" y2=\"5\"></line></g><g><text style=\"font-weight:normal;stroke:none;text-anchor:end\" transform=\"translate(3.0657735699498065,-6)rotate(90)translate(0,3.75)\"><tspan style=\"font-size:10.0px\">-200000</tspan></text><text style=\"font-weight:normal;stroke:none;text-anchor:end\" transform=\"translate(52.29933017746235,-6)rotate(90)translate(0,3.75)\"><tspan style=\"font-size:10.0px\">-100000</tspan></text><text style=\"font-weight:normal;stroke:none;text-anchor:end\" transform=\"translate(101.53288678497489,-6)rotate(90)translate(0,3.75)\"><tspan style=\"font-size:10.0px\">0</tspan></text><text style=\"font-weight:normal;stroke:none;text-anchor:end\" transform=\"translate(150.76644339248745,-6)rotate(90)translate(0,3.75)\"><tspan style=\"font-size:10.0px\">100000</tspan></text><text style=\"font-weight:normal;stroke:none;text-anchor:end\" transform=\"translate(200.0,-6)rotate(90)translate(0,3.75)\"><tspan style=\"font-size:10.0px\">200000</tspan></text></g><g class=\"toyplot-coordinates-Axis-coordinates\" style=\"visibility:hidden\" transform=\"\"><line style=\"stroke:rgb(43.9%,50.2%,56.5%);stroke-opacity:1.0;stroke-width:1.0\" x1=\"0\" x2=\"0\" y1=\"3.0\" y2=\"-4.5\"></line><text style=\"alignment-baseline:hanging;fill:rgb(43.9%,50.2%,56.5%);fill-opacity:1.0;font-size:10px;font-weight:normal;stroke:none;text-anchor:middle\" x=\"0\" y=\"6\"></text></g></g></g></svg><div class=\"toyplot-interactive\"><ul class=\"toyplot-mark-popup\" onmouseleave=\"this.style.visibility='hidden'\" style=\"background:rgba(0%,0%,0%,0.75);border:0;border-radius:6px;color:white;cursor:default;list-style:none;margin:0;padding:5px;position:fixed;visibility:hidden\">\n",
       "            <li class=\"toyplot-mark-popup-title\" style=\"color:lightgray;cursor:default;padding:5px;list-style:none;margin:0\"></li>\n",
       "            <li class=\"toyplot-mark-popup-save-csv\" onmouseout=\"this.style.color='white';this.style.background='steelblue'\" onmouseover=\"this.style.color='steelblue';this.style.background='white'\" style=\"border-radius:3px;padding:5px;list-style:none;margin:0\">\n",
       "                Save as .csv\n",
       "            </li>\n",
       "        </ul><script>\n",
       "        (function()\n",
       "        {\n",
       "          var data_tables = [{\"title\": \"Bar Data\", \"names\": [\"left\", \"right\", \"boundary1\", \"boundary2\"], \"id\": \"t5fb77395b87f40c381c495f7c65fc09d\", \"columns\": [[-0.5, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5, 42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5, 58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5, 66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5, 74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5, 82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5, 90.5, 91.5, 92.5, 93.5], [0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5, 42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5, 58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5, 66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5, 74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5, 82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5, 90.5, 91.5, 92.5, 93.5, 94.5], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [21822.0, 29921.0, 135214.0, 23501.0, 4188.0, 2209.0, 9521.0, 8951.0, 22931.0, 2303.0, 1670.0, 2304.0, 955.0, 22344.0, 9171.0, 4648.0, 64492.0, 69205.0, 120196.0, 17743.0, 19969.0, 52898.0, 7240.0, 35916.0, 2331.0, 1009.0, 138382.0, 43012.0, 11534.0, 29271.0, 11361.0, 10611.0, 1987.0, 56604.0, 56898.0, 49088.0, 68177.0, 44997.0, 10083.0, 42005.0, 33244.0, 144426.0, 134233.0, 59706.0, 3851.0, 10032.0, 48944.0, 45842.0, 36270.0, 60103.0, 40542.0, 59358.0, 53896.0, 67202.0, 51374.0, 57654.0, 2885.0, 25.0, 58938.0, 116.0, 64405.0, 17159.0, 54290.0, 53812.0, 50606.0, 57013.0, 175826.0, 7677.0, 69643.0, 61548.0, 60283.0, 60180.0, 33697.0, 55887.0, 61628.0, 29326.0, 1714.0, 971.0, 212.0, 73590.0, 67420.0, 67398.0, 29429.0, 82017.0, 57227.0, 59353.0, 56232.0, 76054.0, 50301.0, 61841.0, 82582.0, 160.0, 10396.0, 1024.0, 79420.0]], \"filename\": \"toyplot\"}];\n",
       "\n",
       "          function save_csv(data_table)\n",
       "          {\n",
       "            var uri = \"data:text/csv;charset=utf-8,\";\n",
       "            uri += data_table.names.join(\",\") + \"\\n\";\n",
       "            for(var i = 0; i != data_table.columns[0].length; ++i)\n",
       "            {\n",
       "              for(var j = 0; j != data_table.columns.length; ++j)\n",
       "              {\n",
       "                if(j)\n",
       "                  uri += \",\";\n",
       "                uri += data_table.columns[j][i];\n",
       "              }\n",
       "              uri += \"\\n\";\n",
       "            }\n",
       "            uri = encodeURI(uri);\n",
       "\n",
       "            var link = document.createElement(\"a\");\n",
       "            if(typeof link.download != \"undefined\")\n",
       "            {\n",
       "              link.href = uri;\n",
       "              link.style = \"visibility:hidden\";\n",
       "              link.download = data_table.filename + \".csv\";\n",
       "\n",
       "              document.body.appendChild(link);\n",
       "              link.click();\n",
       "              document.body.removeChild(link);\n",
       "            }\n",
       "            else\n",
       "            {\n",
       "              window.open(uri);\n",
       "            }\n",
       "          }\n",
       "\n",
       "          function open_popup(data_table)\n",
       "          {\n",
       "            return function(e)\n",
       "            {\n",
       "              var popup = document.querySelector(\"#t97a2d0f4f74441f790862d6cc0dddf76 .toyplot-mark-popup\");\n",
       "              popup.querySelector(\".toyplot-mark-popup-title\").innerHTML = data_table.title;\n",
       "              popup.querySelector(\".toyplot-mark-popup-save-csv\").onclick = function() { popup.style.visibility = \"hidden\"; save_csv(data_table); }\n",
       "              popup.style.left = (e.clientX - 50) + \"px\";\n",
       "              popup.style.top = (e.clientY - 20) + \"px\";\n",
       "              popup.style.visibility = \"visible\";\n",
       "              e.stopPropagation();\n",
       "              e.preventDefault();\n",
       "            }\n",
       "\n",
       "          }\n",
       "\n",
       "          for(var i = 0; i != data_tables.length; ++i)\n",
       "          {\n",
       "            var data_table = data_tables[i];\n",
       "            var event_target = document.querySelector(\"#\" + data_table.id);\n",
       "            event_target.oncontextmenu = open_popup(data_table);\n",
       "          }\n",
       "        })();\n",
       "        </script><script>\n",
       "        (function()\n",
       "        {\n",
       "            function _sign(x)\n",
       "            {\n",
       "                return x < 0 ? -1 : x > 0 ? 1 : 0;\n",
       "            }\n",
       "\n",
       "            function _mix(a, b, amount)\n",
       "            {\n",
       "                return ((1.0 - amount) * a) + (amount * b);\n",
       "            }\n",
       "\n",
       "            function _log(x, base)\n",
       "            {\n",
       "                return Math.log(Math.abs(x)) / Math.log(base);\n",
       "            }\n",
       "\n",
       "            function _in_range(a, x, b)\n",
       "            {\n",
       "                var left = Math.min(a, b);\n",
       "                var right = Math.max(a, b);\n",
       "                return left <= x && x <= right;\n",
       "            }\n",
       "\n",
       "            function inside(range, projection)\n",
       "            {\n",
       "                for(var i = 0; i != projection.length; ++i)\n",
       "                {\n",
       "                    var segment = projection[i];\n",
       "                    if(_in_range(segment.range.min, range, segment.range.max))\n",
       "                        return true;\n",
       "                }\n",
       "                return false;\n",
       "            }\n",
       "\n",
       "            function to_domain(range, projection)\n",
       "            {\n",
       "                for(var i = 0; i != projection.length; ++i)\n",
       "                {\n",
       "                    var segment = projection[i];\n",
       "                    if(_in_range(segment.range.bounds.min, range, segment.range.bounds.max))\n",
       "                    {\n",
       "                        if(segment.scale == \"linear\")\n",
       "                        {\n",
       "                            var amount = (range - segment.range.min) / (segment.range.max - segment.range.min);\n",
       "                            return _mix(segment.domain.min, segment.domain.max, amount)\n",
       "                        }\n",
       "                        else if(segment.scale[0] == \"log\")\n",
       "                        {\n",
       "                            var amount = (range - segment.range.min) / (segment.range.max - segment.range.min);\n",
       "                            var base = segment.scale[1];\n",
       "                            return _sign(segment.domain.min) * Math.pow(base, _mix(_log(segment.domain.min, base), _log(segment.domain.max, base), amount));\n",
       "                        }\n",
       "                    }\n",
       "                }\n",
       "            }\n",
       "\n",
       "            function display_coordinates(e)\n",
       "            {\n",
       "                var current = svg.createSVGPoint();\n",
       "                current.x = e.clientX;\n",
       "                current.y = e.clientY;\n",
       "\n",
       "                for(var axis_id in axes)\n",
       "                {\n",
       "                    var axis = document.querySelector(\"#\" + axis_id);\n",
       "                    var coordinates = axis.querySelector(\".toyplot-coordinates-Axis-coordinates\");\n",
       "                    if(coordinates)\n",
       "                    {\n",
       "                        var projection = axes[axis_id];\n",
       "                        var local = current.matrixTransform(axis.getScreenCTM().inverse());\n",
       "                        if(inside(local.x, projection))\n",
       "                        {\n",
       "                            var domain = to_domain(local.x, projection);\n",
       "                            coordinates.style.visibility = \"visible\";\n",
       "                            coordinates.setAttribute(\"transform\", \"translate(\" + local.x + \")\");\n",
       "                            var text = coordinates.querySelector(\"text\");\n",
       "                            text.textContent = domain.toFixed(2);\n",
       "                        }\n",
       "                        else\n",
       "                        {\n",
       "                            coordinates.style.visibility= \"hidden\";\n",
       "                        }\n",
       "                    }\n",
       "                }\n",
       "            }\n",
       "\n",
       "            var root_id = \"t97a2d0f4f74441f790862d6cc0dddf76\";\n",
       "            var axes = {\"t0773ad32ba0044c0b4971be3f58d915c\": [{\"domain\": {\"bounds\": {\"max\": Infinity, \"min\": -Infinity}, \"max\": 94.5, \"min\": -0.5}, \"range\": {\"bounds\": {\"max\": Infinity, \"min\": -Infinity}, \"max\": 600.0, \"min\": 0.0}, \"scale\": \"linear\"}], \"td6a7c95cd6cf4d65ba4085b537892676\": [{\"domain\": {\"bounds\": {\"max\": Infinity, \"min\": -Infinity}, \"max\": 200000.0, \"min\": -206227.0}, \"range\": {\"bounds\": {\"max\": Infinity, \"min\": -Infinity}, \"max\": 200.0, \"min\": 0.0}, \"scale\": \"linear\"}]};\n",
       "\n",
       "            var svg = document.querySelector(\"#\" + root_id + \" svg\");\n",
       "            svg.addEventListener(\"click\", display_coordinates);\n",
       "        })();\n",
       "        </script></div></div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import toyplot\n",
    "\n",
    "## stack columns of consens stats\n",
    "zero = np.zeros(ficus_dhi.stats.shape[0])\n",
    "upper = ficus_dhi.stats.reads_consens\n",
    "lower = -1*ficus_dlo.stats.reads_consens\n",
    "boundaries = np.column_stack((lower, zero, upper))\n",
    "\n",
    "## plot barplots\n",
    "canvas = toyplot.Canvas(width=700, height=300)\n",
    "axes = canvas.cartesian()\n",
    "axes.bars(boundaries, baseline=None)\n",
    "axes.y.ticks.show = True\n",
    "axes.y.ticks.labels.angle = -90"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Cluster data across Samples\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: ficus_dlo\n",
      "  [####################] 100%  concat/shuffle input  | 0:00:51 | s6 | \n",
      "  [####################] 100%  clustering across     | 3:26:51 | s6 | \n",
      "  [####################] 100%  building clusters     | 0:00:40 | s6 | \n",
      "  [####################] 100%  aligning clusters     | 0:03:15 | s6 | \n",
      "  [####################] 100%  database indels       | 0:01:00 | s6 | \n",
      "  [####################] 100%  indexing clusters     | 0:07:29 | s6 | \n",
      "  [####################] 100%  building database     | 0:51:26 | s6 | \n",
      "\n",
      "  Assembly: ficus_dhi\n",
      "  [####################] 100%  concat/shuffle input  | 0:00:45 | s6 | \n",
      "  [####################] 100%  clustering across     | 2:05:50 | s6 | \n",
      "  [####################] 100%  building clusters     | 0:00:37 | s6 | \n",
      "  [####################] 100%  aligning clusters     | 0:02:56 | s6 | \n",
      "  [####################] 100%  database indels       | 0:00:50 | s6 | \n",
      "  [####################] 100%  indexing clusters     | 0:06:03 | s6 | \n",
      "  [####################] 100%  building database     | 0:41:25 | s6 | \n"
     ]
    }
   ],
   "source": [
    "## run step 6 on full and subsampled data sets\n",
    "ficus_dlo.run(\"6\")\n",
    "ficus_dhi.run(\"6\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Create branches that include/exclude Samples with little data\n",
    "We have several Samples that recovered very little data, probably as a result of having low quality DNA extractions. Figs are hard. We'll assemble one data set that includes all of these samples, but since they are likely to have little information we'll also assemble most of our data sets without these low data samples. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "ficus_dhi = ip.load_json(\"analysis-ipyrad/ficus_dhi.json\", 1)\n",
    "ficus_dlo = ip.load_json(\"analysis-ipyrad/ficus_dlo.json\", 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: ficus_dhi\n",
      "  [####################] 100%  filtering loci        | 0:01:13 | s7 | \n",
      "  [####################] 100%  building loci/stats   | 0:00:51 | s7 | \n",
      "  [####################] 100%  building alleles      | 0:01:02 | s7 | \n",
      "  [####################] 100%  building vcf file     | 0:02:37 | s7 | \n",
      "  [####################] 100%  writing vcf file      | 0:00:01 | s7 | \n",
      "  [####################] 100%  building arrays       | 0:00:43 | s7 | \n",
      "  [####################] 100%  writing outfiles      | 0:02:12 | s7 | \n",
      "  Outfiles written to: ~/Documents/Ficus/analysis-ipyrad/ficus_dhi_outfiles\n",
      "\n",
      "  Assembly: ficus_dlo\n",
      "  [####################] 100%  filtering loci        | 0:01:07 | s7 | \n",
      "  [####################] 100%  building loci/stats   | 0:00:59 | s7 | \n",
      "  [####################] 100%  building alleles      | 0:01:11 | s7 | \n",
      "  [####################] 100%  building vcf file     | 0:03:07 | s7 | \n",
      "  [####################] 100%  writing vcf file      | 0:00:01 | s7 | \n",
      "  [####################] 100%  building arrays       | 0:00:54 | s7 | \n",
      "  [####################] 100%  writing outfiles      | 0:02:20 | s7 | \n",
      "  Outfiles written to: ~/Documents/Ficus/analysis-ipyrad/ficus_dlo_outfiles\n"
     ]
    }
   ],
   "source": [
    "## infer a min4 assembly to see which samples have least data\n",
    "ficus_dhi.run(\"7\", force=True)\n",
    "ficus_dlo.run(\"7\", force=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>sample_coverage</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>A01_paraensis</th>\n",
       "      <td>6133</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A02_paraensis</th>\n",
       "      <td>11534</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A04_paraensis</th>\n",
       "      <td>35023</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A05_paraensis</th>\n",
       "      <td>14597</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A06_obtusifolia</th>\n",
       "      <td>605</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A07_obtusifolia</th>\n",
       "      <td>455</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A16_citrifolia</th>\n",
       "      <td>3664</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A18_citrifolia</th>\n",
       "      <td>3804</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A19_citrifolia</th>\n",
       "      <td>9194</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A26_popenoei</th>\n",
       "      <td>542</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                 sample_coverage\n",
       "A01_paraensis               6133\n",
       "A02_paraensis              11534\n",
       "A04_paraensis              35023\n",
       "A05_paraensis              14597\n",
       "A06_obtusifolia              605\n",
       "A07_obtusifolia              455\n",
       "A16_citrifolia              3664\n",
       "A18_citrifolia              3804\n",
       "A19_citrifolia              9194\n",
       "A26_popenoei                 542"
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ficus_dlo.stats_dfs.s7_samples.head(10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "excluded samples:\t\tconsens reads\n",
      "  A07_obtusifolia       \t3128\n",
      "  A62_turbinata         \t3400\n",
      "  C02_citrifolia        \t44\n",
      "  A26_popenoei          \t3374\n",
      "  A63_turbinata         \t1562\n",
      "  A34_nymphaeifolia     \t12204\n",
      "  A75_colubrinae        \t3982\n",
      "  A29_popenoei          \t1473\n",
      "  A28_popenoei          \t3168\n",
      "  C33_triangle          \t1373\n",
      "  A38_nymphaeifolia     \t6826\n",
      "  C09_costaricana       \t189\n",
      "  A06_obtusifolia       \t5760\n",
      "  C01_bullenei          \t3826\n",
      "  C52_citrifolia        \t269\n",
      "  C54_citrifolia        \t1409\n",
      "  C32_triangleXtrigonata\t2389\n",
      "  A27_popenoei          \t2467\n",
      "  C34_triangle          \t374\n"
     ]
    }
   ],
   "source": [
    "## get list of samples with > 1000 reads in the min4\n",
    "mask = ficus_dlo.stats_dfs.s7_samples.sample_coverage > 1000\n",
    "skeep = ficus_dlo.stats.index[mask].tolist()\n",
    "\n",
    "## print who was excluded\n",
    "print \"excluded samples:\\t\\tconsens reads\"\n",
    "for name, dat in ficus_dlo.samples.items():\n",
    "    if name not in skeep:\n",
    "        print \"  {:<22}\\t{}\".format(name, int(dat.stats.reads_consens))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Assemble final data sets\n",
    "Also with different thresholds for missing data. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "  Assembly: ficus_dlo_s4\n",
      "  [####################] 100%  filtering loci        | 0:00:43 | s7 | \n",
      "  [####################] 100%  building loci/stats   | 0:00:34 | s7 | \n",
      "  [####################] 100%  building alleles      | 0:00:44 | s7 | \n",
      "  [####################] 100%  building vcf file     | 0:01:26 | s7 | \n",
      "  [####################] 100%  writing vcf file      | 0:00:01 | s7 | \n",
      "  [####################] 100%  building arrays       | 0:00:40 | s7 | \n",
      "  [####################] 100%  writing outfiles      | 0:01:21 | s7 | \n",
      "  Outfiles written to: ~/Documents/Ficus/analysis-ipyrad/ficus_dlo_s4_outfiles\n",
      "\n",
      "  Assembly: ficus_dlo_s10\n",
      "  [####################] 100%  filtering loci        | 0:00:44 | s7 | \n",
      "  [####################] 100%  writing outfiles      | 0:00:47 | s7 | \n",
      "  Outfiles written to: ~/Documents/Ficus/analysis-ipyrad/ficus_dlo_s10_outfiles\n",
      "\n",
      "  Assembly: ficus_dlo_s20\n",
      "  [####################] 100%  filtering loci        | 0:00:44 | s7 | \n",
      "  [####################] 100%  building loci/stats   | 0:00:33 | s7 | \n",
      "  [####################] 100%  building alleles      | 0:00:41 | s7 | \n",
      "  [####################] 100%  building vcf file     | 0:01:02 | s7 | \n",
      "  [####################] 100%  writing vcf file      | 0:00:00 | s7 | \n",
      "  [####################] 100%  building arrays       | 0:00:38 | s7 | \n",
      "  [####################] 100%  writing outfiles      | 0:00:32 | s7 | \n",
      "  Outfiles written to: ~/Documents/Ficus/analysis-ipyrad/ficus_dlo_s20_outfiles\n",
      "\n",
      "  Assembly: ficus_dhi_s4\n",
      "  [####################] 100%  filtering loci        | 0:00:36 | s7 | \n",
      "  [####################] 100%  building loci/stats   | 0:00:27 | s7 | \n",
      "  [####################] 100%  building alleles      | 0:00:37 | s7 | \n",
      "  [####################] 100%  building vcf file     | 0:01:14 | s7 | \n",
      "  [####################] 100%  writing vcf file      | 0:00:01 | s7 | \n",
      "  [####################] 100%  building arrays       | 0:00:32 | s7 | \n",
      "  [####################] 100%  writing outfiles      | 0:01:14 | s7 | \n",
      "  Outfiles written to: ~/Documents/Ficus/analysis-ipyrad/ficus_dhi_s4_outfiles\n",
      "\n",
      "  Assembly: ficus_dhi_s10\n",
      "  [####################] 100%  filtering loci        | 0:00:37 | s7 | \n",
      "  [####################] 100%  building loci/stats   | 0:00:27 | s7 | \n",
      "  [####################] 100%  building alleles      | 0:00:35 | s7 | \n",
      "  [####################] 100%  building vcf file     | 0:01:00 | s7 | \n",
      "  [####################] 100%  writing vcf file      | 0:00:00 | s7 | \n",
      "  [####################] 100%  building arrays       | 0:00:31 | s7 | \n",
      "  [####################] 100%  writing outfiles      | 0:00:43 | s7 | \n",
      "  Outfiles written to: ~/Documents/Ficus/analysis-ipyrad/ficus_dhi_s10_outfiles\n",
      "\n",
      "  Assembly: ficus_dhi_s20\n",
      "  [####################] 100%  filtering loci        | 0:00:36 | s7 | \n",
      "  [####################] 100%  building loci/stats   | 0:00:27 | s7 | \n",
      "  [####################] 100%  building alleles      | 0:00:35 | s7 | \n",
      "  [####################] 100%  building vcf file     | 0:00:53 | s7 | \n",
      "  [####################] 100%  writing vcf file      | 0:00:00 | s7 | \n",
      "  [####################] 100%  building arrays       | 0:00:30 | s7 | \n",
      "  [####################] 100%  writing outfiles      | 0:00:29 | s7 | \n",
      "  Outfiles written to: ~/Documents/Ficus/analysis-ipyrad/ficus_dhi_s20_outfiles\n"
     ]
    }
   ],
   "source": [
    "## final min4s, min10s, and min20\n",
    "for assembly in [ficus_dlo, ficus_dhi]:\n",
    "    for minsamp in [4, 10, 20]:\n",
    "        ## new branch names\n",
    "        subname = assembly.name + \"_s{}\".format(minsamp)\n",
    "        \n",
    "        ## make new branches with subsampling\n",
    "        subdata = assembly.branch(subname, subsamples=skeep)\n",
    "        \n",
    "        ## set minsamp value\n",
    "        subdata.set_params(\"min_samples_locus\", minsamp)\n",
    "        \n",
    "        ## run step7\n",
    "        subdata.run(\"7\", force=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Check some final stats"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>total_filters</th>\n",
       "      <th>applied_order</th>\n",
       "      <th>retained_loci</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>total_prefiltered_loci</th>\n",
       "      <td>250234</td>\n",
       "      <td>0</td>\n",
       "      <td>250234</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>filtered_by_rm_duplicates</th>\n",
       "      <td>6458</td>\n",
       "      <td>6458</td>\n",
       "      <td>243776</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>filtered_by_max_indels</th>\n",
       "      <td>4889</td>\n",
       "      <td>4889</td>\n",
       "      <td>238887</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>filtered_by_max_snps</th>\n",
       "      <td>9980</td>\n",
       "      <td>4476</td>\n",
       "      <td>234411</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>filtered_by_max_shared_het</th>\n",
       "      <td>10985</td>\n",
       "      <td>9067</td>\n",
       "      <td>225344</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>filtered_by_min_sample</th>\n",
       "      <td>197775</td>\n",
       "      <td>186819</td>\n",
       "      <td>38525</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>filtered_by_max_alleles</th>\n",
       "      <td>17038</td>\n",
       "      <td>4609</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>total_filtered_loci</th>\n",
       "      <td>33916</td>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                            total_filters  applied_order  retained_loci\n",
       "total_prefiltered_loci             250234              0         250234\n",
       "filtered_by_rm_duplicates            6458           6458         243776\n",
       "filtered_by_max_indels               4889           4889         238887\n",
       "filtered_by_max_snps                 9980           4476         234411\n",
       "filtered_by_max_shared_het          10985           9067         225344\n",
       "filtered_by_min_sample             197775         186819          38525\n",
       "filtered_by_max_alleles             17038           4609          33916\n",
       "total_filtered_loci                 33916              0          33916"
      ]
     },
     "execution_count": 69,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#subdata = ip.load_json(\"analysis-ipyrad/ficus_dhi_s20\")\n",
    "subdata.stats_dfs.s7_filters"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>sample_coverage</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>A01_paraensis</th>\n",
       "      <td>3178</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A02_paraensis</th>\n",
       "      <td>6990</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A04_paraensis</th>\n",
       "      <td>26258</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A05_paraensis</th>\n",
       "      <td>10147</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A16_citrifolia</th>\n",
       "      <td>1870</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A18_citrifolia</th>\n",
       "      <td>2028</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A19_citrifolia</th>\n",
       "      <td>5755</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A33_nymphaeifolia</th>\n",
       "      <td>2344</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A41_nymphaeifolia</th>\n",
       "      <td>19448</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A42_nymphaeifolia</th>\n",
       "      <td>25988</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A48_trigonata</th>\n",
       "      <td>5099</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A49_trigonata</th>\n",
       "      <td>5963</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A55_triangle</th>\n",
       "      <td>5659</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A59_dugandii</th>\n",
       "      <td>22571</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A60_dugandii</th>\n",
       "      <td>1555</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A61_turbinata</th>\n",
       "      <td>4224</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A65_pertusa</th>\n",
       "      <td>26857</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A67_bullenei</th>\n",
       "      <td>12912</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A69_bullenei</th>\n",
       "      <td>1530</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A70_bullenei</th>\n",
       "      <td>9034</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A71_bullenei</th>\n",
       "      <td>1141</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A72_bullenei</th>\n",
       "      <td>2881</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A77_colubrinae</th>\n",
       "      <td>22439</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A82_perforata</th>\n",
       "      <td>17661</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A83_perforata</th>\n",
       "      <td>17932</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A84_perforata</th>\n",
       "      <td>26821</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A85_perforata</th>\n",
       "      <td>16701</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A87_costaricana</th>\n",
       "      <td>2200</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A94_maxima</th>\n",
       "      <td>18643</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A95_insipida</th>\n",
       "      <td>10999</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A96_glabrata</th>\n",
       "      <td>20708</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>A97_glabrata</th>\n",
       "      <td>16130</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B102_obtusifolia</th>\n",
       "      <td>26421</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B103_obtusifolia</th>\n",
       "      <td>728</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B118_maxima</th>\n",
       "      <td>1542</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B119_maxima</th>\n",
       "      <td>17984</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B120_maxima</th>\n",
       "      <td>20001</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B123_maxima</th>\n",
       "      <td>15354</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B126_insipida</th>\n",
       "      <td>22977</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B127_insipida</th>\n",
       "      <td>18709</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B128_insipida</th>\n",
       "      <td>22847</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B130_glabrataXmaxima</th>\n",
       "      <td>22352</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B131_glabrataXmaxima</th>\n",
       "      <td>23084</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B133_glabrata</th>\n",
       "      <td>21720</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>B134_glabrata</th>\n",
       "      <td>22720</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C04_colubrinae</th>\n",
       "      <td>24782</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C11_costaricana</th>\n",
       "      <td>26317</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C12_dugandii</th>\n",
       "      <td>7438</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C14_dugandii</th>\n",
       "      <td>26742</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C15_insipida</th>\n",
       "      <td>22907</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C17_maxima</th>\n",
       "      <td>18066</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C18_maxima</th>\n",
       "      <td>23139</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C19_nymphaeifolia</th>\n",
       "      <td>26665</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C21_obtusifolia</th>\n",
       "      <td>2627</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C22_obtusifolia</th>\n",
       "      <td>27114</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C24_obtusifolia</th>\n",
       "      <td>25269</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C25_popenoei</th>\n",
       "      <td>26463</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C26_popenoei</th>\n",
       "      <td>25572</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C27_popenoei</th>\n",
       "      <td>15584</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C28_pertusa</th>\n",
       "      <td>25187</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C30_triangle</th>\n",
       "      <td>7256</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C31_triangle</th>\n",
       "      <td>12661</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C36_trigonata</th>\n",
       "      <td>27118</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C37_trigonata</th>\n",
       "      <td>26778</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C39_trigonata</th>\n",
       "      <td>26270</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C41_trigonata</th>\n",
       "      <td>10822</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C43_trigonata</th>\n",
       "      <td>27126</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C45_yoponensis</th>\n",
       "      <td>18584</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C46_yoponensis</th>\n",
       "      <td>22783</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C47_yoponensis</th>\n",
       "      <td>23199</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C48_tonduzii</th>\n",
       "      <td>20918</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C49_dugandii</th>\n",
       "      <td>24327</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C50_insipida</th>\n",
       "      <td>23203</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C51_perforata</th>\n",
       "      <td>22246</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C53_citrifolia</th>\n",
       "      <td>3392</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>C5_colubrinae</th>\n",
       "      <td>26818</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                      sample_coverage\n",
       "A01_paraensis                    3178\n",
       "A02_paraensis                    6990\n",
       "A04_paraensis                   26258\n",
       "A05_paraensis                   10147\n",
       "A16_citrifolia                   1870\n",
       "A18_citrifolia                   2028\n",
       "A19_citrifolia                   5755\n",
       "A33_nymphaeifolia                2344\n",
       "A41_nymphaeifolia               19448\n",
       "A42_nymphaeifolia               25988\n",
       "A48_trigonata                    5099\n",
       "A49_trigonata                    5963\n",
       "A55_triangle                     5659\n",
       "A59_dugandii                    22571\n",
       "A60_dugandii                     1555\n",
       "A61_turbinata                    4224\n",
       "A65_pertusa                     26857\n",
       "A67_bullenei                    12912\n",
       "A69_bullenei                     1530\n",
       "A70_bullenei                     9034\n",
       "A71_bullenei                     1141\n",
       "A72_bullenei                     2881\n",
       "A77_colubrinae                  22439\n",
       "A82_perforata                   17661\n",
       "A83_perforata                   17932\n",
       "A84_perforata                   26821\n",
       "A85_perforata                   16701\n",
       "A87_costaricana                  2200\n",
       "A94_maxima                      18643\n",
       "A95_insipida                    10999\n",
       "A96_glabrata                    20708\n",
       "A97_glabrata                    16130\n",
       "B102_obtusifolia                26421\n",
       "B103_obtusifolia                  728\n",
       "B118_maxima                      1542\n",
       "B119_maxima                     17984\n",
       "B120_maxima                     20001\n",
       "B123_maxima                     15354\n",
       "B126_insipida                   22977\n",
       "B127_insipida                   18709\n",
       "B128_insipida                   22847\n",
       "B130_glabrataXmaxima            22352\n",
       "B131_glabrataXmaxima            23084\n",
       "B133_glabrata                   21720\n",
       "B134_glabrata                   22720\n",
       "C04_colubrinae                  24782\n",
       "C11_costaricana                 26317\n",
       "C12_dugandii                     7438\n",
       "C14_dugandii                    26742\n",
       "C15_insipida                    22907\n",
       "C17_maxima                      18066\n",
       "C18_maxima                      23139\n",
       "C19_nymphaeifolia               26665\n",
       "C21_obtusifolia                  2627\n",
       "C22_obtusifolia                 27114\n",
       "C24_obtusifolia                 25269\n",
       "C25_popenoei                    26463\n",
       "C26_popenoei                    25572\n",
       "C27_popenoei                    15584\n",
       "C28_pertusa                     25187\n",
       "C30_triangle                     7256\n",
       "C31_triangle                    12661\n",
       "C36_trigonata                   27118\n",
       "C37_trigonata                   26778\n",
       "C39_trigonata                   26270\n",
       "C41_trigonata                   10822\n",
       "C43_trigonata                   27126\n",
       "C45_yoponensis                  18584\n",
       "C46_yoponensis                  22783\n",
       "C47_yoponensis                  23199\n",
       "C48_tonduzii                    20918\n",
       "C49_dugandii                    24327\n",
       "C50_insipida                    23203\n",
       "C51_perforata                   22246\n",
       "C53_citrifolia                   3392\n",
       "C5_colubrinae                   26818"
      ]
     },
     "execution_count": 70,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "subdata.stats_dfs.s7_samples"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>locus_coverage</th>\n",
       "      <th>sum_coverage</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>2432</td>\n",
       "      <td>2432</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>1887</td>\n",
       "      <td>4319</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>1248</td>\n",
       "      <td>5567</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>910</td>\n",
       "      <td>6477</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>844</td>\n",
       "      <td>7321</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>848</td>\n",
       "      <td>8169</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>841</td>\n",
       "      <td>9010</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>882</td>\n",
       "      <td>9892</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>911</td>\n",
       "      <td>10803</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>849</td>\n",
       "      <td>11652</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>30</th>\n",
       "      <td>829</td>\n",
       "      <td>12481</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>31</th>\n",
       "      <td>795</td>\n",
       "      <td>13276</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>32</th>\n",
       "      <td>705</td>\n",
       "      <td>13981</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>33</th>\n",
       "      <td>680</td>\n",
       "      <td>14661</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>34</th>\n",
       "      <td>664</td>\n",
       "      <td>15325</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>35</th>\n",
       "      <td>638</td>\n",
       "      <td>15963</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>36</th>\n",
       "      <td>544</td>\n",
       "      <td>16507</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>37</th>\n",
       "      <td>538</td>\n",
       "      <td>17045</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>38</th>\n",
       "      <td>589</td>\n",
       "      <td>17634</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>39</th>\n",
       "      <td>576</td>\n",
       "      <td>18210</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>40</th>\n",
       "      <td>644</td>\n",
       "      <td>18854</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>41</th>\n",
       "      <td>686</td>\n",
       "      <td>19540</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>42</th>\n",
       "      <td>754</td>\n",
       "      <td>20294</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>43</th>\n",
       "      <td>770</td>\n",
       "      <td>21064</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>44</th>\n",
       "      <td>941</td>\n",
       "      <td>22005</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>45</th>\n",
       "      <td>1019</td>\n",
       "      <td>23024</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>46</th>\n",
       "      <td>1094</td>\n",
       "      <td>24118</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>47</th>\n",
       "      <td>1073</td>\n",
       "      <td>25191</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>48</th>\n",
       "      <td>1150</td>\n",
       "      <td>26341</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>49</th>\n",
       "      <td>1122</td>\n",
       "      <td>27463</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50</th>\n",
       "      <td>1083</td>\n",
       "      <td>28546</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>51</th>\n",
       "      <td>1129</td>\n",
       "      <td>29675</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>52</th>\n",
       "      <td>908</td>\n",
       "      <td>30583</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>53</th>\n",
       "      <td>848</td>\n",
       "      <td>31431</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>54</th>\n",
       "      <td>691</td>\n",
       "      <td>32122</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>55</th>\n",
       "      <td>570</td>\n",
       "      <td>32692</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>56</th>\n",
       "      <td>416</td>\n",
       "      <td>33108</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>57</th>\n",
       "      <td>317</td>\n",
       "      <td>33425</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>58</th>\n",
       "      <td>220</td>\n",
       "      <td>33645</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>59</th>\n",
       "      <td>122</td>\n",
       "      <td>33767</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>60</th>\n",
       "      <td>77</td>\n",
       "      <td>33844</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>61</th>\n",
       "      <td>36</td>\n",
       "      <td>33880</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>62</th>\n",
       "      <td>18</td>\n",
       "      <td>33898</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>63</th>\n",
       "      <td>15</td>\n",
       "      <td>33913</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>64</th>\n",
       "      <td>2</td>\n",
       "      <td>33915</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>65</th>\n",
       "      <td>0</td>\n",
       "      <td>33915</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>66</th>\n",
       "      <td>1</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>67</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>68</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>69</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>70</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>71</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>72</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>73</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>74</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>76</th>\n",
       "      <td>0</td>\n",
       "      <td>33916</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    locus_coverage  sum_coverage\n",
       "1                0             0\n",
       "2                0             0\n",
       "3                0             0\n",
       "4                0             0\n",
       "5                0             0\n",
       "6                0             0\n",
       "7                0             0\n",
       "8                0             0\n",
       "9                0             0\n",
       "10               0             0\n",
       "11               0             0\n",
       "12               0             0\n",
       "13               0             0\n",
       "14               0             0\n",
       "15               0             0\n",
       "16               0             0\n",
       "17               0             0\n",
       "18               0             0\n",
       "19               0             0\n",
       "20            2432          2432\n",
       "21            1887          4319\n",
       "22            1248          5567\n",
       "23             910          6477\n",
       "24             844          7321\n",
       "25             848          8169\n",
       "26             841          9010\n",
       "27             882          9892\n",
       "28             911         10803\n",
       "29             849         11652\n",
       "30             829         12481\n",
       "31             795         13276\n",
       "32             705         13981\n",
       "33             680         14661\n",
       "34             664         15325\n",
       "35             638         15963\n",
       "36             544         16507\n",
       "37             538         17045\n",
       "38             589         17634\n",
       "39             576         18210\n",
       "40             644         18854\n",
       "41             686         19540\n",
       "42             754         20294\n",
       "43             770         21064\n",
       "44             941         22005\n",
       "45            1019         23024\n",
       "46            1094         24118\n",
       "47            1073         25191\n",
       "48            1150         26341\n",
       "49            1122         27463\n",
       "50            1083         28546\n",
       "51            1129         29675\n",
       "52             908         30583\n",
       "53             848         31431\n",
       "54             691         32122\n",
       "55             570         32692\n",
       "56             416         33108\n",
       "57             317         33425\n",
       "58             220         33645\n",
       "59             122         33767\n",
       "60              77         33844\n",
       "61              36         33880\n",
       "62              18         33898\n",
       "63              15         33913\n",
       "64               2         33915\n",
       "65               0         33915\n",
       "66               1         33916\n",
       "67               0         33916\n",
       "68               0         33916\n",
       "69               0         33916\n",
       "70               0         33916\n",
       "71               0         33916\n",
       "72               0         33916\n",
       "73               0         33916\n",
       "74               0         33916\n",
       "75               0         33916\n",
       "76               0         33916"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "subdata.stats_dfs.s7_loci"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true
   },
   "source": [
    "### Link to all of the final stats files on github"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "+ [ficus_dlo](...)\n",
    "+ [ficus_dhi](...)\n",
    "+ [ficus_dlo_s4](...)\n",
    "+ [ficus_dhi_s4](...)\n",
    "+ [ficus_dlo_s10](...)\n",
    "+ [ficus_dhi_s10](...)\n",
    "+ [ficus_dlo_s20](...)\n",
    "+ [ficus_dhi_s20](...)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}