about summary refs log tree commit diff
diff options
context:
space:
mode:
-rwxr-xr-xwqflask/base/trait.py28
-rwxr-xr-xwqflask/maintenance/gen_select_dataset.py52
-rwxr-xr-xwqflask/wqflask/interval_mapping/interval_mapping.py29
-rwxr-xr-xwqflask/wqflask/marker_regression/marker_regression.py128
-rwxr-xr-xwqflask/wqflask/static/new/javascript/dataset_menu_structure.json696
-rwxr-xr-xwqflask/wqflask/static/new/javascript/histogram.coffee27
-rwxr-xr-xwqflask/wqflask/static/new/javascript/histogram.js245
-rwxr-xr-xwqflask/wqflask/static/new/javascript/show_trait.coffee1
-rwxr-xr-xwqflask/wqflask/static/new/javascript/show_trait.js1
-rwxr-xr-xwqflask/wqflask/templates/index_page.html12
-rw-r--r--wqflask/wqflask/templates/pair_scan_results.html2
-rwxr-xr-xwqflask/wqflask/templates/show_trait.html10
-rwxr-xr-xwqflask/wqflask/templates/show_trait_details.html6
-rwxr-xr-xwqflask/wqflask/templates/show_trait_mapping_tools.html118
14 files changed, 473 insertions, 882 deletions
diff --git a/wqflask/base/trait.py b/wqflask/base/trait.py
index f3648b80..8930c917 100755
--- a/wqflask/base/trait.py
+++ b/wqflask/base/trait.py
@@ -53,7 +53,8 @@ class GeneralTrait(object):
         self.pvalue = None
         self.mean = None
         self.num_overlap = None
-
+        self.strand_probe = None
+        self.symbol = None
 
         if kw.get('fullname'):
             name2 = value.split("::")
@@ -533,12 +534,27 @@ class GeneralTrait(object):
         return setDescription
 
     @property
+    def name_header_fmt(self):
+        '''Return a human-readable name for use in page header'''
+        if self.dataset.type == 'ProbeSet':
+            return self.symbol
+        elif self.dataset.type == 'Geno':
+            return self.name
+        elif self.dataset.type == 'Publish':
+            return self.post_publication_abbreviation
+        else:
+            return "unnamed"
+
+    @property
     def description_fmt(self):
         '''Return a text formated description'''
-        if self.description:
-            formatted = self.description
-            if self.probe_target_description:
-                formatted += "; " + self.probe_target_description
+        if self.dataset.type == 'ProbeSet':
+            if self.description:
+                formatted = self.description
+                if self.probe_target_description:
+                    formatted += "; " + self.probe_target_description
+        elif self.dataset.type == 'Publish':
+            formatted = self.post_publication_description
         else:
             formatted = "Not available"
         return formatted.capitalize()
@@ -652,4 +668,4 @@ def get_sample_data():
     #    jsonable_sample_data[sample] = trait_ob.data[sample].value
     #
     #return jsonable_sample_data
-    
\ No newline at end of file
+
diff --git a/wqflask/maintenance/gen_select_dataset.py b/wqflask/maintenance/gen_select_dataset.py
index 694efeca..a2ad8c91 100755
--- a/wqflask/maintenance/gen_select_dataset.py
+++ b/wqflask/maintenance/gen_select_dataset.py
@@ -35,7 +35,9 @@ from __future__ import print_function, division
 #config = config.Config(cdict).from_envvar('WQFLASK_SETTINGS')
 #print("cdict is:", cdict)
 
-import our_settings
+import sys
+sys.path.append("/home/zas1024/")
+import zach_settings
 
 import MySQLdb
 
@@ -47,7 +49,7 @@ import urlparse
 
 from pprint import pformat as pf
 
-#Engine = sa.create_engine(our_settings.SQLALCHEMY_DATABASE_URI)
+#Engine = sa.create_engine(zach_settings.SQLALCHEMY_DATABASE_URI)
 
 # build MySql database connection
 
@@ -60,7 +62,7 @@ from pprint import pformat as pf
 def parse_db_uri(db_uri):
     """Converts a database URI to the db name, host name, user name, and password"""
     
-    parsed_uri = urlparse.urlparse(our_settings.DB_URI)
+    parsed_uri = urlparse.urlparse(zach_settings.DB_URI)
     
     db_conn_info = dict(
                         db = parsed_uri.path[1:],
@@ -104,12 +106,48 @@ def get_types(groups):
         types[species] = {}
         for group_name, _group_full_name in group_dict:
             # make group an alias to shorten the code
-            types[species][group_name] = [("Phenotypes", "Phenotypes"), ("Genotypes", "Genotypes")]
-            types[species][group_name] += build_types(species, group_name)
+            #types[species][group_name] = [("Phenotypes", "Phenotypes"), ("Genotypes", "Genotypes")]
+            if phenotypes_exist(group_name):
+                types[species][group_name] = [("Phenotypes", "Phenotypes")]
+            if genotypes_exist(group_name):
+                if group_name in types[species]:
+                    types[species][group_name] += [("Genotypes", "Genotypes")]
+                else:
+                    types[species][group_name] = [("Genotypes", "Genotypes")]
+            if group_name in types[species]:
+                types[species][group_name] += build_types(species, group_name)
+            else:
+                types[species][group_name] = build_types(species, group_name)
 
     return types
 
 
+def phenotypes_exist(group_name):
+    print("group_name:", group_name)
+    Cursor.execute("""select Name from PublishFreeze
+                      where PublishFreeze.Name = %s""", (group_name+"Publish"))
+
+    results = Cursor.fetchone()
+    print("RESULTS:", results)
+
+    if results != None:
+        return True
+    else:
+        return False
+
+def genotypes_exist(group_name):
+    print("group_name:", group_name)
+    Cursor.execute("""select Name from GenoFreeze
+                      where GenoFreeze.Name = %s""", (group_name+"Geno"))
+
+    results = Cursor.fetchone()
+    print("RESULTS:", results)
+
+    if results != None:
+        return True
+    else:
+        return False
+
 def build_types(species, group):
     """Fetches tissues
     
@@ -196,7 +234,7 @@ def build_datasets(species, group, type_name):
 def main():
     """Generates and outputs (as json file) the data for the main dropdown menus on the home page"""
 
-    parse_db_uri(our_settings.DB_URI)
+    parse_db_uri(zach_settings.DB_URI)
 
     species = get_species()
     groups = get_groups(species)
@@ -236,6 +274,6 @@ def _test_it():
     #print("build_datasets:", pf(datasets))
 
 if __name__ == '__main__':   
-    Conn = MySQLdb.Connect(**parse_db_uri(our_settings.DB_URI))
+    Conn = MySQLdb.Connect(**parse_db_uri(zach_settings.DB_URI))
     Cursor = Conn.cursor()
     main()
diff --git a/wqflask/wqflask/interval_mapping/interval_mapping.py b/wqflask/wqflask/interval_mapping/interval_mapping.py
index 1cd3fc80..4b4b7f73 100755
--- a/wqflask/wqflask/interval_mapping/interval_mapping.py
+++ b/wqflask/wqflask/interval_mapping/interval_mapping.py
@@ -24,9 +24,6 @@ from base import data_set
 from base import species
 from base import webqtlConfig
 from utility import webqtlUtil
-# from wqflask.my_pylmm.data import prep_data
-# from wqflask.my_pylmm.pyLMM import lmm
-# from wqflask.my_pylmm.pyLMM import input
 from utility import helper_functions
 from utility import Plot, Bunch
 from utility import temp_data
@@ -223,32 +220,6 @@ class IntervalMapping(object):
                    "cM":reaper_locus.cM, "name":reaper_locus.name, "additive":qtl.additive}
             self.qtl_results.append(qtl)
             
-    def gen_pylmm_results(self, tempdata):
-        print("USING PYLMM")
-        self.dataset.group.get_markers()
-        
-        pheno_vector = np.array([val == "x" and np.nan or float(val) for val in self.vals])
-        if self.dataset.group.species == "human":
-            p_values, t_stats = self.gen_human_results(pheno_vector, tempdata)
-        else:
-            genotype_data = [marker['genotypes'] for marker in self.dataset.group.markers.markers]
-
-            no_val_samples = self.identify_empty_samples()
-            trimmed_genotype_data = self.trim_genotypes(genotype_data, no_val_samples)
-            
-            genotype_matrix = np.array(trimmed_genotype_data).T
-            
-            t_stats, p_values = lmm.run(
-                pheno_vector,
-                genotype_matrix,
-                restricted_max_likelihood=True,
-                refit=False,
-                temp_data=tempdata
-            )
-            
-            print("p_values:", p_values)
-            self.dataset.group.markers.add_pvalues(p_values)
-            self.qtl_results = self.dataset.group.markers.markers
 
     def gen_qtl_results_2(self, tempdata):
         """Generates qtl results for plotting interval map"""
diff --git a/wqflask/wqflask/marker_regression/marker_regression.py b/wqflask/wqflask/marker_regression/marker_regression.py
index 76d05bd8..999a32b8 100755
--- a/wqflask/wqflask/marker_regression/marker_regression.py
+++ b/wqflask/wqflask/marker_regression/marker_regression.py
@@ -120,57 +120,83 @@ class MarkerRegression(object):
         else:
             print("RUNNING NOTHING")
             
-        self.lod_cutoff = 2    
-        self.filtered_markers = []
-        highest_chr = 1 #This is needed in order to convert the highest chr to X/Y
-        for marker in qtl_results:
-            if marker['chr'] > 0 or marker['chr'] == "X" or marker['chr'] == "X/Y":
-                if marker['chr'] > highest_chr or marker['chr'] == "X" or marker['chr'] == "X/Y":
-                    highest_chr = marker['chr']
-                if 'lod_score' in marker:
-                    self.filtered_markers.append(marker)
-
-        self.json_data['chr'] = []
-        self.json_data['pos'] = []
-        self.json_data['lod.hk'] = []
-        self.json_data['markernames'] = []
-
-        self.json_data['suggestive'] = self.suggestive
-        self.json_data['significant'] = self.significant
-
-        #Need to convert the QTL objects that qtl reaper returns into a json serializable dictionary
-        self.qtl_results = []
-        for index,qtl in enumerate(self.filtered_markers):
-            if index<40:
-                print("lod score is:", qtl['lod_score'])
-            if qtl['chr'] == highest_chr and highest_chr != "X" and highest_chr != "X/Y":
-                print("changing to X")
-                self.json_data['chr'].append("X")
-            else:
-                self.json_data['chr'].append(str(qtl['chr']))
-            self.json_data['pos'].append(qtl['Mb'])
-            self.json_data['lod.hk'].append(str(qtl['lod_score']))
-            self.json_data['markernames'].append(qtl['name'])
-
-        #Get chromosome lengths for drawing the interval map plot
-        chromosome_mb_lengths = {}
-        self.json_data['chrnames'] = []
-        for key in self.species.chromosomes.chromosomes.keys():
-            self.json_data['chrnames'].append([self.species.chromosomes.chromosomes[key].name, self.species.chromosomes.chromosomes[key].mb_length])
-            chromosome_mb_lengths[key] = self.species.chromosomes.chromosomes[key].mb_length
-        
-        # print("json_data:", self.json_data)
-        
-
-        self.js_data = dict(
-            json_data = self.json_data,
-            this_trait = self.this_trait.name,
-            data_set = self.dataset.name,
-            maf = self.maf,
-            manhattan_plot = self.manhattan_plot,
-            chromosomes = chromosome_mb_lengths,
-            qtl_results = self.filtered_markers,
-        )
+        if self.pair_scan == True:  
+            self.filtered_markers = []
+            highest_chr = 1 #This is needed in order to convert the highest chr to X/Y
+            for marker in qtl_results:
+                if marker['chr1'] > 0 or marker['chr1'] == "X" or marker['chr1'] == "X/Y":
+                    if marker['chr1'] > highest_chr or marker['chr1'] == "X" or marker['chr1'] == "X/Y":
+                        highest_chr = marker['chr1']
+                    if 'lod_score' in marker:
+                        self.filtered_markers.append(marker)
+
+            for qtl in enumerate(self.filtered_markers):
+                self.json_data['chr1'].append(str(qtl['chr1']))
+                self.json_data['chr2'].append(str(qtl['chr2']))
+                self.json_data['Mb'].append(qtl['Mb'])
+                self.json_data['markernames'].append(qtl['name'])
+
+            self.js_data = dict(
+                json_data = self.json_data,
+                this_trait = self.this_trait.name,
+                data_set = self.dataset.name,
+                maf = self.maf,
+                manhattan_plot = self.manhattan_plot,
+                qtl_results = self.filtered_markers,
+            )
+
+        else:
+            self.lod_cutoff = 2    
+            self.filtered_markers = []
+            highest_chr = 1 #This is needed in order to convert the highest chr to X/Y
+            for marker in qtl_results:
+                if marker['chr'] > 0 or marker['chr'] == "X" or marker['chr'] == "X/Y":
+                    if marker['chr'] > highest_chr or marker['chr'] == "X" or marker['chr'] == "X/Y":
+                        highest_chr = marker['chr']
+                    if 'lod_score' in marker:
+                        self.filtered_markers.append(marker)
+
+            self.json_data['chr'] = []
+            self.json_data['pos'] = []
+            self.json_data['lod.hk'] = []
+            self.json_data['markernames'] = []
+
+            self.json_data['suggestive'] = self.suggestive
+            self.json_data['significant'] = self.significant
+
+            #Need to convert the QTL objects that qtl reaper returns into a json serializable dictionary
+            self.qtl_results = []
+            for index, qtl in enumerate(self.filtered_markers):
+                if index<40:
+                    print("lod score is:", qtl['lod_score'])
+                if qtl['chr'] == highest_chr and highest_chr != "X" and highest_chr != "X/Y":
+                    print("changing to X")
+                    self.json_data['chr'].append("X")
+                else:
+                    self.json_data['chr'].append(str(qtl['chr']))
+                self.json_data['pos'].append(qtl['Mb'])
+                self.json_data['lod.hk'].append(str(qtl['lod_score']))
+                self.json_data['markernames'].append(qtl['name'])
+
+            #Get chromosome lengths for drawing the interval map plot
+            chromosome_mb_lengths = {}
+            self.json_data['chrnames'] = []
+            for key in self.species.chromosomes.chromosomes.keys():
+                self.json_data['chrnames'].append([self.species.chromosomes.chromosomes[key].name, self.species.chromosomes.chromosomes[key].mb_length])
+                chromosome_mb_lengths[key] = self.species.chromosomes.chromosomes[key].mb_length
+        
+            # print("json_data:", self.json_data)
+        
+
+            self.js_data = dict(
+                json_data = self.json_data,
+                this_trait = self.this_trait.name,
+                data_set = self.dataset.name,
+                maf = self.maf,
+                manhattan_plot = self.manhattan_plot,
+                chromosomes = chromosome_mb_lengths,
+                qtl_results = self.filtered_markers,
+            )
         
 
     def run_gemma(self):
diff --git a/wqflask/wqflask/static/new/javascript/dataset_menu_structure.json b/wqflask/wqflask/static/new/javascript/dataset_menu_structure.json
index fabf3998..e790c9c0 100755
--- a/wqflask/wqflask/static/new/javascript/dataset_menu_structure.json
+++ b/wqflask/wqflask/static/new/javascript/dataset_menu_structure.json
@@ -56,12 +56,6 @@
       },
       "barley": {
          "QSM": {
-            "Genotypes": [
-               [
-                  "QSMGeno",
-                  "QSM Genotypes"
-               ]
-            ],
             "Leaf mRNA": [
                [
                   "B1LI0809R",
@@ -79,12 +73,6 @@
                   "B1MI0809R",
                   "Barley1 Leaf MOCK TTKS (Aug09) RMA"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "QSMPublish",
-                  "QSM Published Phenotypes"
-               ]
             ]
          },
          "SXM": {
@@ -114,12 +102,12 @@
                   "Barley1 Leaf MAS 5.0 SCRI (Dec06)"
                ],
                [
-                  "B30_K_1206_Rn",
-                  "Barley1 Leaf gcRMAn SCRI (Dec06)"
-               ],
-               [
                   "B30_K_1206_R",
                   "Barley1 Leaf gcRMA SCRI (Dec06)"
+               ],
+               [
+                  "B30_K_1206_Rn",
+                  "Barley1 Leaf gcRMAn SCRI (Dec06)"
                ]
             ],
             "Phenotypes": [
@@ -132,18 +120,6 @@
       },
       "drosophila": {
          "DGRP": {
-            "Genotypes": [
-               [
-                  "DGRPGeno",
-                  "DGRP Genotypes"
-               ]
-            ],
-            "Phenotypes": [
-               [
-                  "DGRPPublish",
-                  "DGRP Published Phenotypes"
-               ]
-            ],
             "Whole Body mRNA": [
                [
                   "NCSU_DrosWB_LC_RMA_0111",
@@ -152,18 +128,6 @@
             ]
          },
          "Oregon-R_x_2b3": {
-            "Genotypes": [
-               [
-                  "Oregon-R_x_2b3Geno",
-                  "Oregon-R_x_2b3 Genotypes"
-               ]
-            ],
-            "Phenotypes": [
-               [
-                  "Oregon-R_x_2b3Publish",
-                  "Oregon-R_x_2b3 Published Phenotypes"
-               ]
-            ],
             "Whole Body mRNA": [
                [
                   "UAB_DrosWB_LC_RMA_1009",
@@ -195,18 +159,6 @@
                   "GSE5281_RMA0709",
                   "GSE5281 Human Brain Best 102 Liang (Jul09) RMA"
                ]
-            ],
-            "Genotypes": [
-               [
-                  "AD-cases-controlsGeno",
-                  "AD-cases-controls Genotypes"
-               ]
-            ],
-            "Phenotypes": [
-               [
-                  "AD-cases-controlsPublish",
-                  "AD-cases-controls Published Phenotypes"
-               ]
             ]
          },
          "AD-cases-controls-Myers": {
@@ -229,12 +181,6 @@
                   "AD-cases-controls-MyersGeno",
                   "AD-cases-controls-Myers Genotypes"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "AD-cases-controls-MyersPublish",
-                  "AD-cases-controls-Myers Published Phenotypes"
-               ]
             ]
          },
          "Aging-Brain-UCI": {
@@ -244,24 +190,12 @@
                   "GSE11882 UCI Human Entorhinal Cortex Affy U133 Plus2 (Sep13) RMA"
                ]
             ],
-            "Genotypes": [
-               [
-                  "Aging-Brain-UCIGeno",
-                  "Aging-Brain-UCI Genotypes"
-               ]
-            ],
             "Hippocampus mRNA": [
                [
                   "UCI_HC_0913",
                   "GSE11882 UCI Human Hippocampus Affy U133 Plus2 (Sep13) RMA"
                ]
             ],
-            "Phenotypes": [
-               [
-                  "Aging-Brain-UCIPublish",
-                  "Aging-Brain-UCI Published Phenotypes"
-               ]
-            ],
             "Postcentral Gyrus mRNA": [
                [
                   "UCI_PCG_0913",
@@ -282,18 +216,6 @@
                   "GSE15745 NIH Human Brain Cerebellum ILM humanRef-8 v2.0 (May10) RankInv"
                ]
             ],
-            "Genotypes": [
-               [
-                  "Brain-Normal-NIH-GibbsGeno",
-                  "Brain-Normal-NIH-Gibbs Genotypes"
-               ]
-            ],
-            "Phenotypes": [
-               [
-                  "Brain-Normal-NIH-GibbsPublish",
-                  "Brain-Normal-NIH-Gibbs Published Phenotypes"
-               ]
-            ],
             "Pons mRNA": [
                [
                   "GSE15745-GPL6104_Po0510",
@@ -314,12 +236,6 @@
             ]
          },
          "CANDLE": {
-            "Genotypes": [
-               [
-                  "CANDLEGeno",
-                  "CANDLE Genotypes"
-               ]
-            ],
             "Methylation": [
                [
                   "CANDLE_Meth27_0313",
@@ -344,12 +260,6 @@
             ]
          },
          "CEPH-2004": {
-            "Genotypes": [
-               [
-                  "CEPH-2004Geno",
-                  "CEPH-2004 Genotypes"
-               ]
-            ],
             "Lymphoblast B-cell mRNA": [
                [
                   "UT_CEPH_RankInv0909",
@@ -359,12 +269,6 @@
                   "Human_1008",
                   "Monks CEPH B-cells Agilent (Dec04) Log10Ratio"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "CEPH-2004Publish",
-                  "CEPH-2004 Published Phenotypes"
-               ]
             ]
          },
          "GTEx": {
@@ -558,12 +462,6 @@
                   "GTEx Human Frontal Cortex (Apr14) RPKM"
                ]
             ],
-            "Genotypes": [
-               [
-                  "GTExGeno",
-                  "GTEx Genotypes"
-               ]
-            ],
             "Heart - Atrial Appendage mRNA": [
                [
                   "GTEx_log2_HeartAt_0314",
@@ -684,12 +582,6 @@
                   "GTEx Human Pancreas (Apr14) RPKM"
                ]
             ],
-            "Phenotypes": [
-               [
-                  "GTExPublish",
-                  "GTEx Published Phenotypes"
-               ]
-            ],
             "Pituitary Gland mRNA": [
                [
                   "GTEx_log2_Pitui_0314",
@@ -870,18 +762,6 @@
                   "HBTRC-MLC Human Cerebellum Agilent HD (Jun11) mlratio"
                ]
             ],
-            "Genotypes": [
-               [
-                  "HBGeno",
-                  "HB Genotypes"
-               ]
-            ],
-            "Phenotypes": [
-               [
-                  "HBPublish",
-                  "HB Published Phenotypes"
-               ]
-            ],
             "Prefrontal Cortex mRNA": [
                [
                   "HBTRC-MLPFC_0611",
@@ -920,12 +800,6 @@
             ]
          },
          "HCP": {
-            "Genotypes": [
-               [
-                  "HCPGeno",
-                  "HCP Genotypes"
-               ]
-            ],
             "Phenotypes": [
                [
                   "HCPPublish",
@@ -934,12 +808,6 @@
             ]
          },
          "HLC": {
-            "Genotypes": [
-               [
-                  "HLCGeno",
-                  "HLC Genotypes"
-               ]
-            ],
             "Liver mRNA": [
                [
                   "HLC_0311",
@@ -962,12 +830,6 @@
             ]
          },
          "HLT": {
-            "Genotypes": [
-               [
-                  "HLTGeno",
-                  "HLT Genotypes"
-               ]
-            ],
             "Lung mRNA": [
                [
                   "GSE23546HLT0613",
@@ -985,12 +847,6 @@
                   "GRNG-GSE23545HLT0613",
                   "GRNG/GSE23545 Whole-Genome GXD Non-Tumorous Human Lung Tissues Affy HuRSTA array (Jun11) RMA"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "HLTPublish",
-                  "HLT Published Phenotypes"
-               ]
             ]
          },
          "HSB": {
@@ -1012,12 +868,6 @@
                   "Human Dorsolateral Prefrontal Cortex Affy Hu-Exon 1.0 ST (Jul11) Quantile"
                ]
             ],
-            "Genotypes": [
-               [
-                  "HSBGeno",
-                  "HSB Genotypes"
-               ]
-            ],
             "Hippocampus mRNA": [
                [
                   "KIN_YSM_HIP_0711",
@@ -1048,12 +898,6 @@
                   "Human Orbital Prefrontal Cortex Affy Hu-Exon 1.0 ST (Jul11) Quantile"
                ]
             ],
-            "Phenotypes": [
-               [
-                  "HSBPublish",
-                  "HSB Published Phenotypes"
-               ]
-            ],
             "Posterior Inferior Parietal Cortex mRNA": [
                [
                   "KIN_YSM_IPC_0711",
@@ -1118,12 +962,6 @@
                   "INIA Macaca fasicularis Brain (Jan10) RMA **"
                ]
             ],
-            "Genotypes": [
-               [
-                  "Macaca-fasicularisGeno",
-                  "Macaca-fasicularis Genotypes"
-               ]
-            ],
             "Hippocampus mRNA": [
                [
                   "INIA_MacFas_Hc_RMA_0110",
@@ -1136,12 +974,6 @@
                   "INIA Macaca fasicularis Nucleus Accumbens (Jan10) RMA **"
                ]
             ],
-            "Phenotypes": [
-               [
-                  "Macaca-fasicularisPublish",
-                  "Macaca-fasicularis Published Phenotypes"
-               ]
-            ],
             "Prefrontal Cortex mRNA": [
                [
                   "INIA_MacFas_Pf_RMA_0110",
@@ -1164,18 +996,12 @@
                   "NCI Mammary LMT miRNA v2 (Apr09) RMA"
                ],
                [
-                  "MA_M_0704_R",
-                  "NCI Mammary mRNA M430 (July04) RMA"
-               ],
-               [
                   "MA_M_0704_M",
                   "NCI Mammary mRNA M430 (July04) MAS5"
-               ]
-            ],
-            "Phenotypes": [
+               ],
                [
-                  "AKXDPublish",
-                  "AKXD Published Phenotypes"
+                  "MA_M_0704_R",
+                  "NCI Mammary mRNA M430 (July04) RMA"
                ]
             ]
          },
@@ -1226,12 +1052,12 @@
             ],
             "Liver mRNA": [
                [
-                  "LVF2_M_0704_R",
-                  "(B6 x BTBR)F2-ob/ob Liver mRNA M430 (Jul04) RMA"
-               ],
-               [
                   "LVF2_M_0704_M",
                   "(B6 x BTBR)F2-ob/ob Liver mRNA M430 (Jul04) MAS5"
+               ],
+               [
+                  "LVF2_M_0704_R",
+                  "(B6 x BTBR)F2-ob/ob Liver mRNA M430 (Jul04) RMA"
                ]
             ],
             "Phenotypes": [
@@ -1244,10 +1070,6 @@
          "B6D2F2": {
             "Brain mRNA": [
                [
-                  "BRF2_M_0805_M",
-                  "OHSU/VA B6D2F2 Brain mRNA M430 (Aug05) MAS5"
-               ],
-               [
                   "BRF2_M_0805_P",
                   "OHSU/VA B6D2F2 Brain mRNA M430 (Aug05) PDNN"
                ],
@@ -1256,16 +1078,20 @@
                   "OHSU/VA B6D2F2 Brain mRNA M430 (Aug05) RMA"
                ],
                [
-                  "BRF2_M_0304_P",
-                  "OHSU/VA B6D2F2 Brain mRNA M430A (Mar04) PDNN"
+                  "BRF2_M_0805_M",
+                  "OHSU/VA B6D2F2 Brain mRNA M430 (Aug05) MAS5"
                ],
                [
-                  "BRF2_M_0304_R",
-                  "OHSU/VA B6D2F2 Brain mRNA M430A (Mar04) RMA"
+                  "BRF2_M_0304_P",
+                  "OHSU/VA B6D2F2 Brain mRNA M430A (Mar04) PDNN"
                ],
                [
                   "BRF2_M_0304_M",
                   "OHSU/VA B6D2F2 Brain mRNA M430A (Mar04) MAS5"
+               ],
+               [
+                  "BRF2_M_0304_R",
+                  "OHSU/VA B6D2F2 Brain mRNA M430A (Mar04) RMA"
                ]
             ],
             "Genotypes": [
@@ -1273,12 +1099,6 @@
                   "B6D2F2Geno",
                   "B6D2F2 Genotypes"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "B6D2F2Publish",
-                  "B6D2F2 Published Phenotypes"
-               ]
             ]
          },
          "B6D2F2-PSU": {
@@ -1305,32 +1125,14 @@
                   "PSU-B6D2F2_M2000812",
                   "PSU B6D2F2 Muscle Affy Mouse Genome 430 2.0 (Aug12) RMA Males Aged 200 **"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "B6D2F2-PSUPublish",
-                  "B6D2F2-PSU Published Phenotypes"
-               ]
             ]
          },
          "B6D2RI": {
-            "Genotypes": [
-               [
-                  "B6D2RIGeno",
-                  "B6D2RI Genotypes"
-               ]
-            ],
             "Hippocampus mRNA": [
                [
                   "UTHSC_B6D2RI_H_0912",
                   "UTHSC B6D2RI Aged Hippocampus Affy Mouse Gene 1.0 ST (Sep12) RMA **"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "B6D2RIPublish",
-                  "B6D2RI Published Phenotypes"
-               ]
             ]
          },
          "BDF2-1999": {
@@ -1345,12 +1147,6 @@
                   "UCLA_BDF2_LIVER_1999",
                   "UCLA BDF2 Liver (1999) mlratio"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "BDF2-1999Publish",
-                  "BDF2-1999 Published Phenotypes"
-               ]
             ]
          },
          "BDF2-2005": {
@@ -1360,52 +1156,46 @@
                   "BDF2-2005 Genotypes"
                ]
             ],
-            "Phenotypes": [
-               [
-                  "BDF2-2005Publish",
-                  "BDF2-2005 Published Phenotypes"
-               ]
-            ],
             "Striatum mRNA": [
                [
-                  "SA_M2_0905_R",
-                  "OHSU/VA B6D2F2 Striatum M430v2 (Sep05) RMA"
-               ],
-               [
                   "SA_M2_0905_M",
                   "OHSU/VA B6D2F2 Striatum M430v2 (Sep05) MAS5"
                ],
                [
                   "SA_M2_0905_P",
                   "OHSU/VA B6D2F2 Striatum M430v2 (Sep05) PDNN"
+               ],
+               [
+                  "SA_M2_0905_R",
+                  "OHSU/VA B6D2F2 Striatum M430v2 (Sep05) RMA"
                ]
             ]
          },
          "BHF2": {
             "Adipose mRNA": [
                [
-                  "UCLA_BHF2_ADIPOSE_MALE",
-                  "UCLA BHF2 Adipose Male mlratio"
-               ],
-               [
                   "UCLA_BHF2_ADIPOSE_FEMALE",
                   "UCLA BHF2 Adipose Female mlratio"
                ],
                [
+                  "UCLA_BHF2_ADIPOSE_MALE",
+                  "UCLA BHF2 Adipose Male mlratio"
+               ],
+               [
                   "UCLA_BHF2_ADIPOSE_0605",
                   "UCLA BHF2 Adipose (June05) mlratio"
                ]
             ],
             "Brain mRNA": [
                [
-                  "UCLA_BHF2_BRAIN_MALE",
-                  "UCLA BHF2 Brain Male mlratio"
-               ],
-               [
                   "UCLA_BHF2_BRAIN_FEMALE",
                   "UCLA BHF2 Brain Female mlratio"
                ],
                [
+                  "UCLA_BHF2_BRAIN_MALE",
+                  "UCLA BHF2 Brain Male mlratio"
+               ],
+               [
                   "UCLA_BHF2_BRAIN_0605",
                   "UCLA BHF2 Brain (June05) mlratio"
                ]
@@ -1418,37 +1208,31 @@
             ],
             "Liver mRNA": [
                [
-                  "UCLA_BHF2_LIVER_MALE",
-                  "UCLA BHF2 Liver Male mlratio"
-               ],
-               [
                   "UCLA_BHF2_LIVER_FEMALE",
                   "UCLA BHF2 Liver Female mlratio"
                ],
                [
+                  "UCLA_BHF2_LIVER_MALE",
+                  "UCLA BHF2 Liver Male mlratio"
+               ],
+               [
                   "UCLA_BHF2_LIVER_0605",
                   "UCLA BHF2 Liver (June05) mlratio"
                ]
             ],
             "Muscle mRNA": [
                [
-                  "UCLA_BHF2_MUSCLE_MALE",
-                  "UCLA BHF2 Muscle Male mlratio **"
-               ],
-               [
                   "UCLA_BHF2_MUSCLE_FEMALE",
                   "UCLA BHF2 Muscle Female mlratio **"
                ],
                [
+                  "UCLA_BHF2_MUSCLE_MALE",
+                  "UCLA BHF2 Muscle Male mlratio **"
+               ],
+               [
                   "UCLA_BHF2_MUSCLE_0605",
                   "UCLA BHF2 Muscle (June05) mlratio **"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "BHF2Publish",
-                  "BHF2 Published Phenotypes"
-               ]
             ]
          },
          "BHHBF2": {
@@ -1513,12 +1297,6 @@
                   "UCLA_BHHBF2_MUSCLE_FEMALE",
                   "UCLA BHHBF2 Muscle Female Only"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "BHHBF2Publish",
-                  "BHHBF2 Published Phenotypes"
-               ]
             ]
          },
          "BXD": {
@@ -1604,14 +1382,14 @@
                   "UTHSC Mouse BXD Whole Brain RNA Sequence (Nov12) RPKM Trimmed 2.0"
                ],
                [
-                  "UTHSC_BXD_WB_RNASeq1112",
-                  "UTHSC Mouse BXD Whole Brain RNA Sequence (Nov12) RPKM Untrimmed"
-               ],
-               [
                   "UTHSC_BXD_WB_RNASeqtrim1_1112",
                   "UTHSC Mouse BXD Whole Brain RNA Sequence (Nov12) RPKM Trimmed 1.0"
                ],
                [
+                  "UTHSC_BXD_WB_RNASeq1112",
+                  "UTHSC Mouse BXD Whole Brain RNA Sequence (Nov12) RPKM Untrimmed"
+               ],
+               [
                   "UTHSC_BXD_WB_RNASeqEx1112",
                   "UTHSC Mouse BXD Whole Brain RNA Sequence Exon Level (Nov12) RPKM"
                ],
@@ -1624,6 +1402,10 @@
                   "UTHSC Brain mRNA U74Av2 (Nov05) PDNN"
                ],
                [
+                  "BR_U_0805_P",
+                  "UTHSC Brain mRNA U74Av2 (Aug05) PDNN"
+               ],
+               [
                   "BR_U_0805_M",
                   "UTHSC Brain mRNA U74Av2 (Aug05) MAS5"
                ],
@@ -1632,10 +1414,6 @@
                   "UTHSC Brain mRNA U74Av2 (Aug05) RMA"
                ],
                [
-                  "BR_U_0805_P",
-                  "UTHSC Brain mRNA U74Av2 (Aug05) PDNN"
-               ],
-               [
                   "CB_M_0204_P",
                   "INIA Brain mRNA M430 (Feb04) PDNN"
                ]
@@ -1746,10 +1524,6 @@
                   "Eye M430v2 WT Gpnmb (Sep08) RMA **"
                ],
                [
-                  "Eye_M2_0908_R_MT",
-                  "Eye M430v2 Mutant Tyrp1 (Sep08) RMA **"
-               ],
-               [
                   "Eye_M2_0908_WTWT",
                   "Eye M430v2 WT WT (Sep08) RMA **"
                ],
@@ -1758,6 +1532,10 @@
                   "Eye M430v2 WT Tyrp1 (Sep08) RMA **"
                ],
                [
+                  "Eye_M2_0908_R_MT",
+                  "Eye M430v2 Mutant Tyrp1 (Sep08) RMA **"
+               ],
+               [
                   "DBA2J-ONH-1212",
                   "Howell et al. 2011, DBA/2J Glaucoma Optic Nerve Head M430 2.0 (Dec12) RMA"
                ],
@@ -1962,12 +1740,12 @@
                   "Mouse Kidney M430v2 Sex Balanced (Aug06) PDNN"
                ],
                [
-                  "MA_M2_0706_P",
-                  "Mouse Kidney M430v2 (Jul06) PDNN"
-               ],
-               [
                   "MA_M2_0706_R",
                   "Mouse Kidney M430v2 (Jul06) RMA"
+               ],
+               [
+                  "MA_M2_0706_P",
+                  "Mouse Kidney M430v2 (Jul06) PDNN"
                ]
             ],
             "Leucocytes mRNA": [
@@ -1988,14 +1766,14 @@
             ],
             "Liver Proteome": [
                [
-                  "EPFLETHZBXDprotHFD0514",
-                  "EPFL/ETHZ BXD Liver, Soluble Proteins HFD (May14) SWATH **"
-               ],
-               [
                   "EPFLETHZBXDprotCD0514",
                   "EPFL/ETHZ BXD Liver, Soluble Proteins CD (May14) SWATH **"
                ],
                [
+                  "EPFLETHZBXDprotHFD0514",
+                  "EPFL/ETHZ BXD Liver, Soluble Proteins HFD (May14) SWATH **"
+               ],
+               [
                   "EPFLBXDprotHFDRPN0214",
                   "EPFL/LISP BXD Liver, Soluble Proteins HFD (Feb14) SRM **"
                ],
@@ -2132,14 +1910,14 @@
             ],
             "Neocortex mRNA": [
                [
-                  "DevNeocortex_ILM6.2P14RInv_1111",
-                  "BIDMC/UTHSC Dev Neocortex P14 ILMv6.2 (Nov11) RankInv"
-               ],
-               [
                   "DevNeocortex_ILM6.2P3RInv_1111",
                   "BIDMC/UTHSC Dev Neocortex P3 ILMv6.2 (Nov11) RankInv"
                ],
                [
+                  "DevNeocortex_ILM6.2P14RInv_1111",
+                  "BIDMC/UTHSC Dev Neocortex P14 ILMv6.2 (Nov11) RankInv"
+               ],
+               [
                   "HQFNeoc_1210v2_RankInv",
                   "HQF BXD Neocortex ILM6v1.1 (Dec10v2) RankInv"
                ],
@@ -2152,12 +1930,12 @@
                   "HQF BXD Neocortex ILM6v1.1 (Feb08) RankInv"
                ],
                [
-                  "DevNeocortex_ILM6.2P3RInv_1110",
-                  "BIDMC/UTHSC Dev Neocortex P3 ILMv6.2 (Nov10) RankInv"
-               ],
-               [
                   "DevNeocortex_ILM6.2P14RInv_1110",
                   "BIDMC/UTHSC Dev Neocortex P14 ILMv6.2 (Nov10) RankInv"
+               ],
+               [
+                  "DevNeocortex_ILM6.2P3RInv_1110",
+                  "BIDMC/UTHSC Dev Neocortex P3 ILMv6.2 (Nov10) RankInv"
                ]
             ],
             "Nucleus Accumbens mRNA": [
@@ -2256,14 +2034,14 @@
                   "ONC HEI Retina (April 2012) RankInv"
                ],
                [
-                  "DoDTATRCRetMoGene2_1313",
-                  "DoD TATRC Retina Affy MoGene 2.0 ST (Dec13) RMA"
-               ],
-               [
                   "DoDTATRCRetExMoGene2_1313",
                   "DoD TATRC Retina Affy MoGene 2.0 ST (Dec13) RMA Exon Level"
                ],
                [
+                  "DoDTATRCRetMoGene2_1313",
+                  "DoD TATRC Retina Affy MoGene 2.0 ST (Dec13) RMA"
+               ],
+               [
                   "ONCRetMoGene2_0413",
                   "DoD TATRC Retina Affy MoGene 2.0 ST (Oct13) RMA **"
                ],
@@ -2284,12 +2062,12 @@
                   "B6D2 ONC Retina (April 2012) RankInv **"
                ],
                [
-                  "HEIONCvsCRetILM6_0911",
-                  "HEI ONC vs Control Retina Illumina V6.2 (Sep11) RankInv **"
-               ],
-               [
                   "G2HEIONCRetILM6_0911",
                   "G2 HEI ONC Retina Illumina V6.2 (Sep11) RankInv **"
+               ],
+               [
+                  "HEIONCvsCRetILM6_0911",
+                  "HEI ONC vs Control Retina Illumina V6.2 (Sep11) RankInv **"
                ]
             ],
             "Spleen mRNA": [
@@ -2376,12 +2154,12 @@
                   "BIDMC/UTHSC Dev Striatum P14 ILMv6.2 (Nov11) RankInv **"
                ],
                [
-                  "DevStriatum_ILM6.2P14RInv_1110",
-                  "BIDMC/UTHSC Dev Striatum P14 ILMv6.2 (Nov10) RankInv **"
-               ],
-               [
                   "DevStriatum_ILM6.2P3RInv_1110",
                   "BIDMC/UTHSC Dev Striatum P3 ILMv6.2 (Nov10) RankInv **"
+               ],
+               [
+                  "DevStriatum_ILM6.2P14RInv_1110",
+                  "BIDMC/UTHSC Dev Striatum P14 ILMv6.2 (Nov10) RankInv **"
                ]
             ],
             "T Cell (helper) mRNA": [
@@ -2404,16 +2182,16 @@
             ],
             "Ventral Tegmental Area mRNA": [
                [
-                  "VCUEtOH_0609_R",
-                  "VCU BXD VTA EtOH M430 2.0 (Jun09) RMA **"
-               ],
-               [
                   "VCUSal_0609_R",
                   "VCU BXD VTA Sal M430 2.0 (Jun09) RMA **"
                ],
                [
                   "VCUEtvsSal_0609_R",
                   "VCU BXD VTA Et vs Sal M430 2.0 (Jun09) Sscore **"
+               ],
+               [
+                  "VCUEtOH_0609_R",
+                  "VCU BXD VTA EtOH M430 2.0 (Jun09) RMA **"
                ]
             ]
          },
@@ -2550,12 +2328,12 @@
             ],
             "Hippocampus mRNA": [
                [
-                  "HC_M2CB_1205_R",
-                  "Hippocampus Consortium M430v2 CXB (Dec05) RMA"
-               ],
-               [
                   "HC_M2CB_1205_P",
                   "Hippocampus Consortium M430v2 CXB (Dec05) PDNN"
+               ],
+               [
+                  "HC_M2CB_1205_R",
+                  "Hippocampus Consortium M430v2 CXB (Dec05) RMA"
                ]
             ],
             "Phenotypes": [
@@ -2572,12 +2350,6 @@
             ]
          },
          "HS": {
-            "Genotypes": [
-               [
-                  "HSGeno",
-                  "HS Genotypes"
-               ]
-            ],
             "Hippocampus mRNA": [
                [
                   "OXUKHS_ILMHipp_RI0510",
@@ -2604,18 +2376,6 @@
             ]
          },
          "HS-CC": {
-            "Genotypes": [
-               [
-                  "HS-CCGeno",
-                  "HS-CC Genotypes"
-               ]
-            ],
-            "Phenotypes": [
-               [
-                  "HS-CCPublish",
-                  "HS-CC Published Phenotypes"
-               ]
-            ],
             "Striatum mRNA": [
                [
                   "OHSU_HS-CC_ILMStr_0211",
@@ -2660,14 +2420,6 @@
                   "Hippocampus Illumina (May07) RankInv"
                ],
                [
-                  "Illum_LXS_Hipp_NON_1008",
-                  "Hippocampus Illumina NON (Oct08) RankInv beta"
-               ],
-               [
-                  "Illum_LXS_Hipp_RSE_1008",
-                  "Hippocampus Illumina RSE (Oct08) RankInv beta"
-               ],
-               [
                   "Illum_LXS_Hipp_NOE_1008",
                   "Hippocampus Illumina NOE (Oct08) RankInv beta"
                ],
@@ -2678,6 +2430,14 @@
                [
                   "Illum_LXS_Hipp_NOS_1008",
                   "Hippocampus Illumina NOS (Oct08) RankInv beta"
+               ],
+               [
+                  "Illum_LXS_Hipp_NON_1008",
+                  "Hippocampus Illumina NON (Oct08) RankInv beta"
+               ],
+               [
+                  "Illum_LXS_Hipp_RSE_1008",
+                  "Hippocampus Illumina RSE (Oct08) RankInv beta"
                ]
             ],
             "Phenotypes": [
@@ -2688,16 +2448,16 @@
             ],
             "Prefrontal Cortex mRNA": [
                [
-                  "VCUEtOH_0806_R",
-                  "VCU LXS PFC EtOH M430A 2.0 (Aug06) RMA **"
-               ],
-               [
                   "VCUSal_0806_R",
                   "VCU LXS PFC Sal M430A 2.0 (Aug06) RMA"
                ],
                [
                   "VCUEt_vs_Sal_0806_R",
                   "VCU LXS PFC Et vs Sal M430A 2.0 (Aug06) Sscore **"
+               ],
+               [
+                  "VCUEtOH_0806_R",
+                  "VCU LXS PFC EtOH M430A 2.0 (Aug06) RMA **"
                ]
             ]
          },
@@ -2736,12 +2496,12 @@
             ],
             "Hippocampus mRNA": [
                [
-                  "UMUTAffyExon_0209_RMA_MDP",
-                  "UMUTAffy Hippocampus Exon (Feb09) RMA MDP"
-               ],
-               [
                   "HC_M2_0606_MDP",
                   "Hippocampus Consortium M430v2 (Jun06) RMA MDP"
+               ],
+               [
+                  "UMUTAffyExon_0209_RMA_MDP",
+                  "UMUTAffy Hippocampus Exon (Feb09) RMA MDP"
                ]
             ],
             "Liver mRNA": [
@@ -2774,12 +2534,6 @@
             ]
          },
          "NZBXFVB-N2": {
-            "Genotypes": [
-               [
-                  "NZBXFVB-N2Geno",
-                  "NZBXFVB-N2 Genotypes"
-               ]
-            ],
             "Mammary Tumors mRNA": [
                [
                   "NCI_Mam_Tum_RMA_0409",
@@ -2799,12 +2553,6 @@
                   "SOTNOT-OHSUGeno",
                   "SOTNOT-OHSU Genotypes"
                ]
-            ],
-            "Phenotypes": [
-               [
-                  "SOTNOT-OHSUPublish",
-                  "SOTNOT-OHSU Published Phenotypes"
-               ]
             ]
          },
          "Scripps-2013": {
@@ -2817,29 +2565,11 @@
                   "ScrBXDACC4GEx0513",
                   "Scripps BXD ACC 4 Groups Affy Mouse Gene 1.0 ST (May13) RMA Exon Level **"
                ]
-            ],
-            "Genotypes": [
-               [
-                  "Scripps-2013Geno",
-                  "Scripps-2013 Genotypes"
-               ]
-            ],
-            "Phenotypes": [
-               [
-                  "Scripps-2013Publish",
-                  "Scripps-2013 Published Phenotypes"
-               ]
             ]
          }
       },
       "rat": {
          "HSNIH": {
-            "Genotypes": [
-               [
-                  "HSNIHGeno",
-                  "HSNIH Genotypes"
-               ]
-            ],
             "Phenotypes": [
                [
                   "HSNIHPublish",
@@ -2915,18 +2645,6 @@
                   "UIOWA_Eye_RMA_0906",
                   "UIOWA Eye mRNA RAE230v2 (Sep06) RMA"
                ]
-            ],
-            "Genotypes": [
-               [
-                  "SRxSHRSPF2Geno",
-                  "SRxSHRSPF2 Genotypes"
-               ]
-            ],
-            "Phenotypes": [
-               [
-                  "SRxSHRSPF2Publish",
-                  "SRxSHRSPF2 Published Phenotypes"
-               ]
             ]
          }
       },
@@ -2946,12 +2664,6 @@
             ]
          },
          "J12XJ58F2": {
-            "Genotypes": [
-               [
-                  "J12XJ58F2Geno",
-                  "J12XJ58F2 Genotypes"
-               ]
-            ],
             "Phenotypes": [
                [
                   "J12XJ58F2Publish",
@@ -2962,12 +2674,6 @@
       },
       "tomato": {
          "LXP": {
-            "Genotypes": [
-               [
-                  "LXPGeno",
-                  "LXP Genotypes"
-               ]
-            ],
             "Phenotypes": [
                [
                   "LXPPublish",
@@ -3285,14 +2991,6 @@
       "barley": {
          "QSM": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Leaf mRNA",
                "Leaf mRNA"
             ]
@@ -3319,28 +3017,12 @@
       "drosophila": {
          "DGRP": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Whole Body mRNA",
                "Whole Body mRNA"
             ]
          ],
          "Oregon-R_x_2b3": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Whole Body mRNA",
                "Whole Body mRNA"
             ]
@@ -3349,24 +3031,12 @@
       "human": {
          "AD-cases-controls": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Brain mRNA",
                "Brain mRNA"
             ]
          ],
          "AD-cases-controls-Myers": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ],
@@ -3377,14 +3047,6 @@
          ],
          "Aging-Brain-UCI": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Entorhinal Cortex mRNA",
                "Entorhinal Cortex mRNA"
             ],
@@ -3403,14 +3065,6 @@
          ],
          "Brain-Normal-NIH-Gibbs": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Cerebellum mRNA",
                "Cerebellum mRNA"
             ],
@@ -3433,10 +3087,6 @@
                "Phenotypes"
             ],
             [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Methylation",
                "Methylation"
             ],
@@ -3447,28 +3097,12 @@
          ],
          "CEPH-2004": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Lymphoblast B-cell mRNA",
                "Lymphoblast B-cell mRNA"
             ]
          ],
          "GTEx": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Adrenal Gland mRNA",
                "Adrenal Gland mRNA"
             ],
@@ -3659,14 +3293,6 @@
          ],
          "HB": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Cerebellum mRNA",
                "Cerebellum mRNA"
             ],
@@ -3683,10 +3309,6 @@
             [
                "Phenotypes",
                "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
             ]
          ],
          "HLC": [
@@ -3695,38 +3317,18 @@
                "Phenotypes"
             ],
             [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Liver mRNA",
                "Liver mRNA"
             ]
          ],
          "HLT": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Lung mRNA",
                "Lung mRNA"
             ]
          ],
          "HSB": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Amygdala mRNA",
                "Amygdala mRNA"
             ],
@@ -3795,14 +3397,6 @@
       "macaque monkey": {
          "Macaca-fasicularis": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Amygdala mRNA",
                "Amygdala mRNA"
             ],
@@ -3827,10 +3421,6 @@
       "mouse": {
          "AKXD": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ],
@@ -3881,10 +3471,6 @@
          ],
          "B6D2F2": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ],
@@ -3895,10 +3481,6 @@
          ],
          "B6D2F2-PSU": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ],
@@ -3909,24 +3491,12 @@
          ],
          "B6D2RI": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Hippocampus mRNA",
                "Hippocampus mRNA"
             ]
          ],
          "BDF2-1999": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ],
@@ -3937,10 +3507,6 @@
          ],
          "BDF2-2005": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ],
@@ -3951,10 +3517,6 @@
          ],
          "BHF2": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ],
@@ -3977,10 +3539,6 @@
          ],
          "BHHBF2": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ],
@@ -4233,10 +3791,6 @@
                "Phenotypes"
             ],
             [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Hippocampus mRNA",
                "Hippocampus mRNA"
             ],
@@ -4251,14 +3805,6 @@
          ],
          "HS-CC": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Striatum mRNA",
                "Striatum mRNA"
             ]
@@ -4323,34 +3869,18 @@
                "Phenotypes"
             ],
             [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Mammary Tumors mRNA",
                "Mammary Tumors mRNA"
             ]
          ],
          "SOTNOT-OHSU": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
                "Genotypes",
                "Genotypes"
             ]
          ],
          "Scripps-2013": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Anterior Cingulate Cortex mRNA",
                "Anterior Cingulate Cortex mRNA"
             ]
@@ -4361,10 +3891,6 @@
             [
                "Phenotypes",
                "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
             ]
          ],
          "HXBBXH": [
@@ -4403,14 +3929,6 @@
          ],
          "SRxSHRSPF2": [
             [
-               "Phenotypes",
-               "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
-            ],
-            [
                "Eye mRNA",
                "Eye mRNA"
             ]
@@ -4431,10 +3949,6 @@
             [
                "Phenotypes",
                "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
             ]
          ]
       },
@@ -4443,10 +3957,6 @@
             [
                "Phenotypes",
                "Phenotypes"
-            ],
-            [
-               "Genotypes",
-               "Genotypes"
             ]
          ]
       }
diff --git a/wqflask/wqflask/static/new/javascript/histogram.coffee b/wqflask/wqflask/static/new/javascript/histogram.coffee
index 98f89ac6..68d9b5a2 100755
--- a/wqflask/wqflask/static/new/javascript/histogram.coffee
+++ b/wqflask/wqflask/static/new/javascript/histogram.coffee
@@ -4,7 +4,6 @@ class Histogram
     constructor: (@sample_list, @sample_group) ->

         @sort_by = "name"

         @format_count = d3.format(",.0f") #a formatter for counts

-        @get_sample_vals()

         

         @margin = {top: 10, right: 30, bottom: 30, left: 30}

         @plot_width = 960 - @margin.left - @margin.right

@@ -12,21 +11,25 @@ class Histogram
 

         @x_buffer = @plot_width/20

         @y_buffer = @plot_height/20

+        @plot_height -= @y_buffer

+

+        @get_sample_vals(@sample_list)

+        @redraw(@sample_vals)

 

+    redraw: (@sample_vals) ->

         @y_min = d3.min(@sample_vals)  

         @y_max = d3.max(@sample_vals) * 1.1

-        

-        @plot_height -= @y_buffer

+

         @create_x_scale()

         @get_histogram_data()

         @create_y_scale()

         

+        $("#histogram").empty()

         @svg = @create_svg()

-

         @create_graph()

 

-    get_sample_vals: () ->

-        @sample_vals = (sample.value for sample in @sample_list when sample.value != null)

+    get_sample_vals: (sample_list) ->

+        @sample_vals = (sample.value for sample in sample_list when sample.value != null)

 

     create_svg: () ->

         svg = d3.select("#histogram")

@@ -53,8 +56,9 @@ class Histogram
 

     get_histogram_data: () ->

         console.log("sample_vals:", @sample_vals)

+        n_bins = Math.sqrt(@sample_vals.length)

         @histogram_data = d3.layout.histogram()

-            .bins(@x_scale.ticks(20))(@sample_vals)

+            .bins(@x_scale.ticks(n_bins))(@sample_vals)

         console.log("histogram_data:", @histogram_data[0])

 

     create_y_scale: () ->

@@ -112,17 +116,20 @@ class Histogram
             .attr("class", "bar")

             .attr("transform", (d) =>

                 return "translate(" + @x_scale(d.x) + "," + @y_scale(d.y) + ")")

+

+        rect_width = @x_scale(@histogram_data[0].x + @histogram_data[0].dx) -

+                     @x_scale(@histogram_data[0].x)

         

         bar.append("rect")

             .attr("x", 1)

-            .attr("width", @x_scale(@histogram_data[0].x + @histogram_data[0].dx) - 1)

+            .attr("width", rect_width - 1)

             .attr("height", (d) =>

                 return @plot_height - @y_scale(d.y)

             )

         bar.append("text")

             .attr("dy", ".75em")

             .attr("y", 6)

-            .attr("x", @x_scale(@histogram_data[0].dx)/2)

+            .attr("x", rect_width / 2)

             .attr("text-anchor", "middle")

             .style("fill", "#fff")

             .text((d) =>

@@ -131,4 +138,4 @@ class Histogram
                     return @format_count(d.y)

             )

 

-root.Histogram = Histogram
\ No newline at end of file
+root.Histogram = Histogram

diff --git a/wqflask/wqflask/static/new/javascript/histogram.js b/wqflask/wqflask/static/new/javascript/histogram.js
index 561a3068..d872a3ba 100755
--- a/wqflask/wqflask/static/new/javascript/histogram.js
+++ b/wqflask/wqflask/static/new/javascript/histogram.js
@@ -1,124 +1,135 @@
-// Generated by CoffeeScript 1.8.0
-var Histogram, root;
-
-root = typeof exports !== "undefined" && exports !== null ? exports : this;
-
-Histogram = (function() {
-  function Histogram(sample_list, sample_group) {
-    this.sample_list = sample_list;
-    this.sample_group = sample_group;
-    this.sort_by = "name";
-    this.format_count = d3.format(",.0f");
-    this.get_sample_vals();
-    this.margin = {
-      top: 10,
-      right: 30,
-      bottom: 30,
-      left: 30
+// Generated by CoffeeScript 1.9.2
+(function() {
+  var Histogram, root;
+
+  root = typeof exports !== "undefined" && exports !== null ? exports : this;
+
+  Histogram = (function() {
+    function Histogram(sample_list1, sample_group) {
+      this.sample_list = sample_list1;
+      this.sample_group = sample_group;
+      this.sort_by = "name";
+      this.format_count = d3.format(",.0f");
+      this.margin = {
+        top: 10,
+        right: 30,
+        bottom: 30,
+        left: 30
+      };
+      this.plot_width = 960 - this.margin.left - this.margin.right;
+      this.plot_height = 500 - this.margin.top - this.margin.bottom;
+      this.x_buffer = this.plot_width / 20;
+      this.y_buffer = this.plot_height / 20;
+      this.plot_height -= this.y_buffer;
+      this.get_sample_vals(this.sample_list);
+      this.redraw(this.sample_vals);
+    }
+
+    Histogram.prototype.redraw = function(sample_vals) {
+      this.sample_vals = sample_vals;
+      this.y_min = d3.min(this.sample_vals);
+      this.y_max = d3.max(this.sample_vals) * 1.1;
+      this.create_x_scale();
+      this.get_histogram_data();
+      this.create_y_scale();
+      $("#histogram").empty();
+      this.svg = this.create_svg();
+      return this.create_graph();
     };
-    this.plot_width = 960 - this.margin.left - this.margin.right;
-    this.plot_height = 500 - this.margin.top - this.margin.bottom;
-    this.x_buffer = this.plot_width / 20;
-    this.y_buffer = this.plot_height / 20;
-    this.y_min = d3.min(this.sample_vals);
-    this.y_max = d3.max(this.sample_vals) * 1.1;
-    this.plot_height -= this.y_buffer;
-    this.create_x_scale();
-    this.get_histogram_data();
-    this.create_y_scale();
-    this.svg = this.create_svg();
-    this.create_graph();
-  }
-
-  Histogram.prototype.get_sample_vals = function() {
-    var sample;
-    return this.sample_vals = (function() {
-      var _i, _len, _ref, _results;
-      _ref = this.sample_list;
-      _results = [];
-      for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-        sample = _ref[_i];
-        if (sample.value !== null) {
-          _results.push(sample.value);
+
+    Histogram.prototype.get_sample_vals = function(sample_list) {
+      var sample;
+      return this.sample_vals = (function() {
+        var i, len, results;
+        results = [];
+        for (i = 0, len = sample_list.length; i < len; i++) {
+          sample = sample_list[i];
+          if (sample.value !== null) {
+            results.push(sample.value);
+          }
         }
-      }
-      return _results;
-    }).call(this);
-  };
-
-  Histogram.prototype.create_svg = function() {
-    var svg;
-    svg = d3.select("#histogram").append("svg").attr("class", "histogram").attr("width", this.plot_width + this.margin.left + this.margin.right).attr("height", this.plot_height + this.margin.top + this.margin.bottom).append("g").attr("transform", "translate(" + this.margin.left + "," + this.margin.top + ")");
-    return svg;
-  };
-
-  Histogram.prototype.create_x_scale = function() {
-    var x0;
-    console.log("min/max:", d3.min(this.sample_vals) + "," + d3.max(this.sample_vals));
-    x0 = Math.max(-d3.min(this.sample_vals), d3.max(this.sample_vals));
-    return this.x_scale = d3.scale.linear().domain([d3.min(this.sample_vals), d3.max(this.sample_vals)]).range([0, this.plot_width]).nice();
-  };
-
-  Histogram.prototype.get_histogram_data = function() {
-    console.log("sample_vals:", this.sample_vals);
-    this.histogram_data = d3.layout.histogram().bins(this.x_scale.ticks(20))(this.sample_vals);
-    return console.log("histogram_data:", this.histogram_data[0]);
-  };
-
-  Histogram.prototype.create_y_scale = function() {
-    return this.y_scale = d3.scale.linear().domain([
-      0, d3.max(this.histogram_data, (function(_this) {
+        return results;
+      })();
+    };
+
+    Histogram.prototype.create_svg = function() {
+      var svg;
+      svg = d3.select("#histogram").append("svg").attr("class", "histogram").attr("width", this.plot_width + this.margin.left + this.margin.right).attr("height", this.plot_height + this.margin.top + this.margin.bottom).append("g").attr("transform", "translate(" + this.margin.left + "," + this.margin.top + ")");
+      return svg;
+    };
+
+    Histogram.prototype.create_x_scale = function() {
+      var x0;
+      console.log("min/max:", d3.min(this.sample_vals) + "," + d3.max(this.sample_vals));
+      x0 = Math.max(-d3.min(this.sample_vals), d3.max(this.sample_vals));
+      return this.x_scale = d3.scale.linear().domain([d3.min(this.sample_vals), d3.max(this.sample_vals)]).range([0, this.plot_width]).nice();
+    };
+
+    Histogram.prototype.get_histogram_data = function() {
+      var n_bins;
+      console.log("sample_vals:", this.sample_vals);
+      n_bins = Math.sqrt(this.sample_vals.length);
+      this.histogram_data = d3.layout.histogram().bins(this.x_scale.ticks(n_bins))(this.sample_vals);
+      return console.log("histogram_data:", this.histogram_data[0]);
+    };
+
+    Histogram.prototype.create_y_scale = function() {
+      return this.y_scale = d3.scale.linear().domain([
+        0, d3.max(this.histogram_data, (function(_this) {
+          return function(d) {
+            return d.y;
+          };
+        })(this))
+      ]).range([this.plot_height, 0]);
+    };
+
+    Histogram.prototype.create_graph = function() {
+      this.add_x_axis();
+      this.add_y_axis();
+      return this.add_bars();
+    };
+
+    Histogram.prototype.add_x_axis = function() {
+      var x_axis;
+      x_axis = d3.svg.axis().scale(this.x_scale).orient("bottom");
+      return this.svg.append("g").attr("class", "x axis").attr("transform", "translate(0," + this.plot_height + ")").call(x_axis);
+    };
+
+    Histogram.prototype.add_y_axis = function() {
+      var yAxis;
+      yAxis = d3.svg.axis().scale(this.y_scale).orient("left").ticks(5);
+      return this.svg.append("g").attr("class", "y axis").call(yAxis).append("text").attr("transform", "rotate(-90)").attr("y", 6).attr("dy", ".71em").style("text-anchor", "end");
+    };
+
+    Histogram.prototype.add_bars = function() {
+      var bar, rect_width;
+      console.log("bar_width:", this.x_scale(this.histogram_data[0].dx));
+      bar = this.svg.selectAll(".bar").data(this.histogram_data).enter().append("g").attr("class", "bar").attr("transform", (function(_this) {
         return function(d) {
-          return d.y;
+          return "translate(" + _this.x_scale(d.x) + "," + _this.y_scale(d.y) + ")";
         };
-      })(this))
-    ]).range([this.plot_height, 0]);
-  };
-
-  Histogram.prototype.create_graph = function() {
-    this.add_x_axis();
-    this.add_y_axis();
-    return this.add_bars();
-  };
-
-  Histogram.prototype.add_x_axis = function() {
-    var x_axis;
-    x_axis = d3.svg.axis().scale(this.x_scale).orient("bottom");
-    return this.svg.append("g").attr("class", "x axis").attr("transform", "translate(0," + this.plot_height + ")").call(x_axis);
-  };
-
-  Histogram.prototype.add_y_axis = function() {
-    var yAxis;
-    yAxis = d3.svg.axis().scale(this.y_scale).orient("left").ticks(5);
-    return this.svg.append("g").attr("class", "y axis").call(yAxis).append("text").attr("transform", "rotate(-90)").attr("y", 6).attr("dy", ".71em").style("text-anchor", "end");
-  };
-
-  Histogram.prototype.add_bars = function() {
-    var bar;
-    console.log("bar_width:", this.x_scale(this.histogram_data[0].dx));
-    bar = this.svg.selectAll(".bar").data(this.histogram_data).enter().append("g").attr("class", "bar").attr("transform", (function(_this) {
-      return function(d) {
-        return "translate(" + _this.x_scale(d.x) + "," + _this.y_scale(d.y) + ")";
-      };
-    })(this));
-    bar.append("rect").attr("x", 1).attr("width", this.x_scale(this.histogram_data[0].x + this.histogram_data[0].dx) - 1).attr("height", (function(_this) {
-      return function(d) {
-        return _this.plot_height - _this.y_scale(d.y);
-      };
-    })(this));
-    return bar.append("text").attr("dy", ".75em").attr("y", 6).attr("x", this.x_scale(this.histogram_data[0].dx) / 2).attr("text-anchor", "middle").style("fill", "#fff").text((function(_this) {
-      return function(d) {
-        var bar_height;
-        bar_height = _this.plot_height - _this.y_scale(d.y);
-        if (bar_height > 20) {
-          return _this.format_count(d.y);
-        }
-      };
-    })(this));
-  };
+      })(this));
+      rect_width = this.x_scale(this.histogram_data[0].x + this.histogram_data[0].dx) - this.x_scale(this.histogram_data[0].x);
+      bar.append("rect").attr("x", 1).attr("width", rect_width - 1).attr("height", (function(_this) {
+        return function(d) {
+          return _this.plot_height - _this.y_scale(d.y);
+        };
+      })(this));
+      return bar.append("text").attr("dy", ".75em").attr("y", 6).attr("x", rect_width / 2).attr("text-anchor", "middle").style("fill", "#fff").text((function(_this) {
+        return function(d) {
+          var bar_height;
+          bar_height = _this.plot_height - _this.y_scale(d.y);
+          if (bar_height > 20) {
+            return _this.format_count(d.y);
+          }
+        };
+      })(this));
+    };
+
+    return Histogram;
 
-  return Histogram;
+  })();
 
-})();
+  root.Histogram = Histogram;
 
-root.Histogram = Histogram;
+}).call(this);
diff --git a/wqflask/wqflask/static/new/javascript/show_trait.coffee b/wqflask/wqflask/static/new/javascript/show_trait.coffee
index ee57831f..1d3123ba 100755
--- a/wqflask/wqflask/static/new/javascript/show_trait.coffee
+++ b/wqflask/wqflask/static/new/javascript/show_trait.coffee
@@ -238,6 +238,7 @@ $ ->
                         sample_sets['samples_all'].add_value(real_value)
                         already_seen[name] = true
         console.log("towards end:", sample_sets)
+        root.histogram.redraw(sample_sets['samples_primary'].the_values)
         update_stat_values(sample_sets)
 
     show_hide_outliers = ->
diff --git a/wqflask/wqflask/static/new/javascript/show_trait.js b/wqflask/wqflask/static/new/javascript/show_trait.js
index c2dc07ee..9323862a 100755
--- a/wqflask/wqflask/static/new/javascript/show_trait.js
+++ b/wqflask/wqflask/static/new/javascript/show_trait.js
@@ -265,6 +265,7 @@
         }
       }
       console.log("towards end:", sample_sets);
+      root.histogram.redraw(sample_sets['samples_primary'].the_values);
       return update_stat_values(sample_sets);
     };
     show_hide_outliers = function() {
diff --git a/wqflask/wqflask/templates/index_page.html b/wqflask/wqflask/templates/index_page.html
index 5e0a92e3..cb29a07c 100755
--- a/wqflask/wqflask/templates/index_page.html
+++ b/wqflask/wqflask/templates/index_page.html
@@ -206,12 +206,12 @@
                     <h3>GN1 Mirror and development sites</h3>
 
                     <ul>
-                        <li><a href="http://www.genenetwork.org/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Main GN1 site at UTHSC</a> (main site)</li>
-                        <li><a href="http://www.genenetwork.waimr.uwa.edu.au/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Australia at the UWA</a></li>
-                        <li><a href="http://gn.genetics.ucla.edu/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">California at UCLA</a></li>
-                        <li><a href="http://genenetwork.helmholtz-hzi.de/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Germany at the HZI</a></li>
-                        <li><a href="http://genenetwork.memphis.edu/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Memphis at the U of M</a></li>
-                        <li><a href="http://genenetwork.epfl.ch/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Switzerland at the EPFL</a></li>
+                        <li><a href="http://www.genenetwork.org/" target="_blank">Main GN1 site at UTHSC</a> (main site)</li>
+                        <li><a href="http://www.genenetwork.waimr.uwa.edu.au/" target="_blank">Australia at the UWA</a></li>
+                        <li><a href="http://gn.genetics.ucla.edu/" target="_blank">California at UCLA</a></li>
+                        <li><a href="http://genenetwork.helmholtz-hzi.de/" target="_blank">Germany at the HZI</a></li>
+                        <li><a href="http://genenetwork.memphis.edu/" target="_blank">Memphis at the U of M</a></li>
+                        <li><a href="http://genenetwork.epfl.ch/" target="_blank">Switzerland at the EPFL</a></li>
                     </ul>
                 </section>
 
diff --git a/wqflask/wqflask/templates/pair_scan_results.html b/wqflask/wqflask/templates/pair_scan_results.html
index f46d7cbf..ab4a36bb 100644
--- a/wqflask/wqflask/templates/pair_scan_results.html
+++ b/wqflask/wqflask/templates/pair_scan_results.html
@@ -44,7 +44,7 @@
                    </tr>
                 </thead>
                 <tbody>
-                    {% for marker in pair_scan_results %}
+                    {% for marker in filtered_markers %}
                         <tr>
                             <td>{{loop.index}}</td>
                             <td>{{marker.name}}</td>
diff --git a/wqflask/wqflask/templates/show_trait.html b/wqflask/wqflask/templates/show_trait.html
index a1723ef8..d6f22f41 100755
--- a/wqflask/wqflask/templates/show_trait.html
+++ b/wqflask/wqflask/templates/show_trait.html
@@ -13,8 +13,12 @@
 {% endblock %}
 {% block content %} <!-- Start of body -->
 
-    {{ header("{}".format(this_trait.symbol),
-        '{}: {}'.format(this_trait.name, this_trait.description_fmt)) }}
+    {% if this_trait.dataset.type != 'Geno' %}
+	{{ header("{}".format(this_trait.name_header_fmt),
+	    '{}: {}'.format(this_trait.name, this_trait.description_fmt)) }}
+    {% else %}
+	{{ header("{}".format(this_trait.name_header_fmt)) }}
+    {% endif %}
 
 
     <form method="post" action="/corr_compute" name="trait_page" id="trait_data_form"
@@ -31,7 +35,7 @@
             <div class="page-header">
                 <h1>{{ dataset.group.species.capitalize() }} -
                     {{ dataset.group.name }} -
-                    {{ this_trait.symbol }}
+                    {{ this_trait.name_header_fmt }}
                 </h1>
             </div>
             
diff --git a/wqflask/wqflask/templates/show_trait_details.html b/wqflask/wqflask/templates/show_trait_details.html
index 0afac1f7..e1780e42 100755
--- a/wqflask/wqflask/templates/show_trait_details.html
+++ b/wqflask/wqflask/templates/show_trait_details.html
@@ -1,9 +1,13 @@
 <dl class="dl-horizontal">
+    {% if this_trait.dataset.type == 'ProbeSet' %}
     <dt>Aliases</dt>
     <dd>{{ this_trait.alias_fmt }}</dd>
+    {% endif %}
 
+    {% if this_trait.dataset.type != 'Publish' %}
     <dt>Location</dt>
     <dd>{{ this_trait.location_fmt }}</dd>
+    {% endif %}
 
     <dt>Database</dt>
     <dd>
@@ -16,7 +20,7 @@
     <dt>
         <a href="/blatInfo.html" target="_blank"
            title="Values higher than 2 for the specificity are good">
-            BLAT Specifity
+            BLAT Specificity
         </a>
     </dt>
     <dd>{{ "%0.3f" | format(this_trait.probe_set_specificity|float) }}</dd>
diff --git a/wqflask/wqflask/templates/show_trait_mapping_tools.html b/wqflask/wqflask/templates/show_trait_mapping_tools.html
index 27504e51..bd1e6f1e 100755
--- a/wqflask/wqflask/templates/show_trait_mapping_tools.html
+++ b/wqflask/wqflask/templates/show_trait_mapping_tools.html
@@ -4,14 +4,16 @@
         
             <ul class="nav nav-pills">
                 <li class="active">
-                    <a href="#interval_mapping" data-toggle="tab">Interval Mapping</a>
-                </li>
-                <li>
                     <a href="#pylmm" data-toggle="tab">pyLMM</a>
                 </li>
                 <li>
                     <a href="#rqtl_geno" data-toggle="tab">rqtl</a>
                 </li>
+                {% if dataset.group.species != 'human' %}
+                <li>
+                    <a href="#interval_mapping" data-toggle="tab">Interval Mapping</a>
+                </li>
+                {% endif %}
                 {% if dataset.group.species == 'human' %}
                 <li>
                     <a href="#plink" data-toggle="tab">PLINK</a>
@@ -26,60 +28,7 @@
             </ul>
 
             <div class="tab-content">
-                <div class="tab-pane active" id="interval_mapping">
-                    <div style="padding: 20px" class="form-horizontal">
-                        <div class="mapping_method_fields form-group">
-                            <label for="mapping_permutations" class="col-xs-2 control-label">Permutations</label>
-                            <div style="margin-left: 20px;" class="col-xs-4 controls">
-                                <input name="num_perm_reaper" value="2000" type="text" class="form-control">
-                            </div>
-                        </div>
-    
-                        <div class="mapping_method_fields form-group">
-                            <label for="mapping_bootstraps" class="col-xs-2 control-label" title="Bootstrapping Resamples">Bootstrap</label>
-                            <div style="margin-left: 20px;" class="col-xs-4 controls">
-                                <input name="mapping_bootstraps" value="2000" type="text" class="form-control">
-                            </div>
-                        </div>
-                    
-                        <div class="mapping_method_fields form-group">
-                            <label style="text-align:left;" class="col-xs-12 control-label">Display Additive Effect</label>
-                            <div class="col-xs-12 controls" id="display_additive_effect">                      
-                                <label class="radio-inline">
-                                    <input type="radio" name="display_additive" id="display_additive" value="yes" checked="">
-                                    Yes
-                                </label>
-                                <label class="radio-inline">
-                                    <input type="radio" name="display_additive" id="display_additive" value="no">
-                                    No
-                                </label>
-                            </div>
-                        </div>
-
-                        <div class="mapping_method_fields form-group">
-                            <label style="text-align:left;" class="col-xs-12 control-label">Manhattan Plot</label>
-                            <div class="col-xs-12 controls">                      
-                                <label class="radio-inline">
-                                    <input type="radio" name="manhattan_plot_reaper" value="true">
-                                    Yes
-                                </label>
-                                <label class="radio-inline">
-                                    <input type="radio" name="manhattan_plot_reaper" value="false" checked="">
-                                    No
-                               </label>
-                            </div>
-                        </div>
-                        <div class="form-group">
-                            <div style="padding-left:15px;" class="controls">
-                                <button id="interval_mapping_compute" class="btn submit_special btn-primary" data-url="/interval_mapping" title="Compute Interval Mapping">
-                                    <i class="icon-ok-circle icon-white"></i> Open Mapping Tool
-                                </button>
-                            </div>
-                        </div>
-                    </div>
-                </div>
-                
-                <div class="tab-pane" id="pylmm">
+                <div class="tab-pane active" id="pylmm">
                     
                     <div style="padding: 20px" class="form-horizontal">
                         <div class="mapping_method_fields form-group">
@@ -211,7 +160,60 @@
                         </div>
                     </div>
                 </div>
-                
+                {% if dataset.group.species != 'human' %}
+                <div class="tab-pane" id="interval_mapping">
+                    <div style="padding: 20px" class="form-horizontal">
+                        <div class="mapping_method_fields form-group">
+                            <label for="mapping_permutations" class="col-xs-2 control-label">Permutations</label>
+                            <div style="margin-left: 20px;" class="col-xs-4 controls">
+                                <input name="num_perm_reaper" value="2000" type="text" class="form-control">
+                            </div>
+                        </div>
+    
+                        <div class="mapping_method_fields form-group">
+                            <label for="mapping_bootstraps" class="col-xs-2 control-label" title="Bootstrapping Resamples">Bootstrap</label>
+                            <div style="margin-left: 20px;" class="col-xs-4 controls">
+                                <input name="mapping_bootstraps" value="2000" type="text" class="form-control">
+                            </div>
+                        </div>
+                    
+                        <div class="mapping_method_fields form-group">
+                            <label style="text-align:left;" class="col-xs-12 control-label">Display Additive Effect</label>
+                            <div class="col-xs-12 controls" id="display_additive_effect">                      
+                                <label class="radio-inline">
+                                    <input type="radio" name="display_additive" id="display_additive" value="yes" checked="">
+                                    Yes
+                                </label>
+                                <label class="radio-inline">
+                                    <input type="radio" name="display_additive" id="display_additive" value="no">
+                                    No
+                                </label>
+                            </div>
+                        </div>
+
+                        <div class="mapping_method_fields form-group">
+                            <label style="text-align:left;" class="col-xs-12 control-label">Manhattan Plot</label>
+                            <div class="col-xs-12 controls">                      
+                                <label class="radio-inline">
+                                    <input type="radio" name="manhattan_plot_reaper" value="true">
+                                    Yes
+                                </label>
+                                <label class="radio-inline">
+                                    <input type="radio" name="manhattan_plot_reaper" value="false" checked="">
+                                    No
+                               </label>
+                            </div>
+                        </div>
+                        <div class="form-group">
+                            <div style="padding-left:15px;" class="controls">
+                                <button id="interval_mapping_compute" class="btn submit_special btn-primary" data-url="/interval_mapping" title="Compute Interval Mapping">
+                                    <i class="icon-ok-circle icon-white"></i> Open Mapping Tool
+                                </button>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+                {% endif %}
                 {% if dataset.group.species == 'human' %}
                 <div class="tab-pane" id="plink">
                     <div style="padding: 20px" class="form-horizontal">