about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--wqflask/base/trait.py15
-rw-r--r--wqflask/wqflask/marker_regression/marker_regression.py2
-rw-r--r--wqflask/wqflask/marker_regression/marker_regression_gn1.py13
-rw-r--r--wqflask/wqflask/templates/gsearch_gene.html2
-rw-r--r--wqflask/wqflask/templates/gsearch_pheno.html2
-rw-r--r--wqflask/wqflask/templates/marker_regression_gn1.html77
-rw-r--r--wqflask/wqflask/templates/search_result_page.html2
7 files changed, 78 insertions, 35 deletions
diff --git a/wqflask/base/trait.py b/wqflask/base/trait.py
index f18481a8..900e050c 100644
--- a/wqflask/base/trait.py
+++ b/wqflask/base/trait.py
@@ -322,7 +322,7 @@ class GeneralTrait(object):
                 #phenotype traits, then display the pre-publication description instead
                 #of the post-publication description
                 if self.confidential:
-                    self.description_display = ""
+                    self.description_display = self.pre_publication_description
 
                     #if not webqtlUtil.hasAccessToConfidentialPhenotypeTrait(
                     #        privilege=self.dataset.privilege,
@@ -330,11 +330,11 @@ class GeneralTrait(object):
                     #        authorized_users=self.authorized_users):
                     #
                     #    description = self.pre_publication_description
-
-                if description:
-                    self.description_display = description.strip()
                 else:
-                    self.description_display = ""
+                    if description:
+                        self.description_display = description.strip()
+                    else:
+                        self.description_display = ""
 
                 if not self.year.isdigit():
                     self.pubmed_text = "N/A"
@@ -612,7 +612,10 @@ class GeneralTrait(object):
                 if self.probe_target_description:
                     formatted += "; " + self.probe_target_description
         elif self.dataset.type == 'Publish':
-            formatted = self.post_publication_description
+            if self.confidential:
+                formatted = self.pre_publication_description
+            else:
+                formatted = self.post_publication_description
         else:
             formatted = "Not available"
         return formatted.capitalize()
diff --git a/wqflask/wqflask/marker_regression/marker_regression.py b/wqflask/wqflask/marker_regression/marker_regression.py
index 89af856e..a53afd5a 100644
--- a/wqflask/wqflask/marker_regression/marker_regression.py
+++ b/wqflask/wqflask/marker_regression/marker_regression.py
@@ -702,8 +702,6 @@ class MarkerRegression(object):
                                                             control = control_geno,
                                                             nboot = self.num_bootstrap)
         else:
-            # reaper_results = genotype.regression(strains = self.samples,
-                                                 # trait = self.vals)
             reaper_results = genotype.regression(strains = trimmed_samples,
                                                  trait = trimmed_values)
 
diff --git a/wqflask/wqflask/marker_regression/marker_regression_gn1.py b/wqflask/wqflask/marker_regression/marker_regression_gn1.py
index 4f52bd55..f902afb7 100644
--- a/wqflask/wqflask/marker_regression/marker_regression_gn1.py
+++ b/wqflask/wqflask/marker_regression/marker_regression_gn1.py
@@ -810,7 +810,7 @@ class MarkerRegression(object):
 
         #draw bootstap
         #if self.bootChecked and not self.multipleInterval:
-        #    self.drawBootStrapResult(canvas, self.nboot, drawAreaHeight, plotXScale, offset=newoffset)
+        #   self.drawBootStrapResult(canvas, self.nboot, drawAreaHeight, plotXScale, offset=newoffset, zoom= zoom, startMb=startMb, endMb = endMb)
 
         # Draw clickable region and gene band if selected
         if self.plotScale == 'physic' and self.selectedChr > -1:
@@ -857,7 +857,7 @@ class MarkerRegression(object):
         BootCoord = []
         i = 0
         startX = xLeftOffset
-
+     
         if self.selectedChr == -1: #ZS: If viewing full genome/all chromosomes
             for j, _chr in enumerate(self.genotype):
                 BootCoord.append( [])
@@ -876,7 +876,7 @@ class MarkerRegression(object):
                 for _locus in _chr:
                     if _chr.name == self.ChrList[self.selectedChr][0]:
                         if self.plotScale == 'physic':
-                            Xc = startX + (_locus.Mb-self.startMb)*plotXScale
+                            Xc = startX + (_locus.Mb-startMb)*plotXScale
                         else:
                             Xc = startX + (_locus.cM-_chr[0].cM)*plotXScale
                         BootCoord[-1].append([Xc, self.bootResult[i]])
@@ -1017,7 +1017,7 @@ class MarkerRegression(object):
                     else:
                         locPixel += (Mb*(_chr[-1].cM-_chr[0].cM)/self.ChrLengthCMList[i])*plotXScale
                         break
-        if locPixel >= 0:
+        if locPixel >= 0 and self.plotScale == 'physic':
             traitPixel = ((locPixel, yZero), (locPixel-6, yZero+12), (locPixel+6, yZero+12))
             canvas.drawPolygon(traitPixel, edgeColor=pid.black, fillColor=self.TRANSCRIPT_LOCATION_COLOR, closed=1)
 
@@ -1762,6 +1762,7 @@ class MarkerRegression(object):
                     strYLoc + canvas.fontHeight(MBLabelFont)+ 10*(zoom%2) + 10, font=megabaseLabelFont, color=pid.black)
             pass
         else:
+            strYLoc = yZero + spacingFromLabelToAxis + canvas.fontHeight(MBLabelFont) + 8
             ChrAInfo = []
             preLpos = -1
             distinctCount = 0.0
@@ -1847,6 +1848,10 @@ class MarkerRegression(object):
                 if j == 0:
                     canvas.drawLine(startPosX,yZero,startPosX,yZero+40, color=lineColor)
                 startPosX += (self.ChrLengthDistList[j]+self.GraphInterval)*plotXScale
+                
+            centimorganLabelFont = pid.Font(ttf="verdana", size=18*zoom*1.5, bold=0)
+            canvas.drawString("Centimorgans", xLeftOffset + (plotWidth - canvas.stringWidth("Megabases", font=centimorganLabelFont))/2,
+                    strYLoc + canvas.fontHeight(MBLabelFont)+ 10*(zoom%2) + 10, font=centimorganLabelFont, color=pid.black)
 
         canvas.drawLine(xLeftOffset, yZero, xLeftOffset+plotWidth, yZero, color=pid.black, width=X_AXIS_THICKNESS) # Draw the X axis itself
 
diff --git a/wqflask/wqflask/templates/gsearch_gene.html b/wqflask/wqflask/templates/gsearch_gene.html
index a50157ce..2d970b36 100644
--- a/wqflask/wqflask/templates/gsearch_gene.html
+++ b/wqflask/wqflask/templates/gsearch_gene.html
@@ -93,7 +93,7 @@
 {% block js %}
     <script language="javascript" type="text/javascript" src="/static/new/javascript/search_results.js"></script>
     
-    <script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/js/jquery.dataTables.min.js"></script>
+    <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/dataTables.buttons.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/buttons.html5.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/buttons.bootstrap.min.js"></script>
diff --git a/wqflask/wqflask/templates/gsearch_pheno.html b/wqflask/wqflask/templates/gsearch_pheno.html
index b28a34df..be4981bb 100644
--- a/wqflask/wqflask/templates/gsearch_pheno.html
+++ b/wqflask/wqflask/templates/gsearch_pheno.html
@@ -86,7 +86,7 @@
 {% block js %}
     <script language="javascript" type="text/javascript" src="/static/new/javascript/search_results.js"></script>
     
-    <script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/js/jquery.dataTables.min.js"></script>
+    <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/dataTables.buttons.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/buttons.html5.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/buttons.bootstrap.min.js"></script>
diff --git a/wqflask/wqflask/templates/marker_regression_gn1.html b/wqflask/wqflask/templates/marker_regression_gn1.html
index c5cb278c..7454b650 100644
--- a/wqflask/wqflask/templates/marker_regression_gn1.html
+++ b/wqflask/wqflask/templates/marker_regression_gn1.html
@@ -169,14 +169,16 @@
         </div>
 
         </form>
-        <div style="width:48%;">
-          {% if selectedChr == -1 %}
+        {% if selectedChr == -1 %}
+        <div style="width:{% if 'additive' in trimmed_markers[0] %}50%{% else %}35%{% endif %};">
           <h2>Results</h2>
+          <div id="table_container" style="background-color: #eeeeee; border: 1px solid black;">
           <table id="qtl_results" class="table table-hover table-striped">
             <thead>
               <tr>
                 <th></th>
-                <th>Index</th>
+                <th>Row</th>
+                <th>Locus</th>
                 <th>{{ LRS_LOD }}</th>
                 <th>Chr</th>
                 {% if plotScale == "centimorgan" %}
@@ -184,7 +186,12 @@
                 {% else %}
                 <th>Mb</th>
                 {% endif %}
-                <th>Locus</th>
+                {% if 'additive' in trimmed_markers[0] %}
+                <th>Add Eff</th>
+                {% endif %}
+                {% if 'dominance' in trimmed_markers[0] %}
+                <th>Dom Eff</th>
+                {% endif %}
               </tr>
             </thead>
             <tbody>
@@ -196,6 +203,7 @@
                          value="{{ marker.name }}" checked="checked">
                 </td>
                 <td align="right">{{ loop.index }}</td>
+                <td>{{ marker.name }}</td>
                 {% if LRS_LOD == "LOD" %}
                 {% if 'lod_score' in marker %}
                 <td>{{ '%0.2f' | format(marker.lod_score|float) }}</td>
@@ -211,13 +219,22 @@
                 {% endif %}
                 <td>{{marker.chr}}</td>
                 <td>{{ '%0.6f' | format(marker.Mb|float) }}</td>
-                <td>{{ marker.name }}</td>
+                {% if 'additive' in marker %}
+                <td>{{ '%0.3f' | format(marker.additive|float) }}</td>
+                {% endif %}
+                {% if 'dominance' in marker %}
+                <td>{{ '%0.2f' | format(marker.dominance|float) }}</td>
+                {% endif %}
               </tr>
               {% endfor %}
             </tbody>
           </table>
-          {% else %}
+          </div>
+        </div>
+        {% else %}
+        <div>
           <h2>Interval Analyst</h2>
+          <div id="table_container" style="background-color: #eeeeee; border: 1px solid black;">
           <table id="interval_analyst" class="table table-hover table-striped">
             <thead>
               <tr>
@@ -236,8 +253,9 @@
               {% endfor %}
             </tbody>
           </table>
-          {% endif %}
+          </div>
         </div>
+        {% endif %}
     </div>
 
     <!-- End of body -->
@@ -251,7 +269,7 @@
     <script type="text/javascript" src="/static/new/js_external/underscore.string.min.js"></script>
     <script type="text/javascript" src="/static/new/js_external/d3-tip.min.js"></script>
 
-    <script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/js/jquery.dataTables.js"></script>
+    <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/dataTables.buttons.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/buttons.html5.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/buttons.bootstrap.min.js"></script>
@@ -274,26 +292,35 @@
     <script type="text/javascript" charset="utf-8">
         $(document).ready( function () {
             console.time("Creating table");
-            $('#qtl_results').dataTable( {
+            $('#qtl_results').DataTable( {
                 "columns": [
-                    { "type": "natural", "sWidth": "10%", "bSortable": false },
+                    { "type": "natural", "width": "5%", "bSortable": false },
+                    { "type": "natural", "width": "6%" },
+                    { "type": "natural" },
                     { "type": "natural" },
                     { "type": "natural" },
                     { "type": "natural" },
                     { "type": "natural" },
-                    { "type": "natural", "sWidth": "30%"}
+                    { "type": "natural" }
                     ],
-                "order": [[1, "asc"]],
+                "order": [[1, "asc" ]],
                 "buttons": [
-                    'csv'
+                    {
+                       extend: 'csvHtml5',
+                       text: 'Download CSV',
+                       title: 'search_results',
+                       fieldBoundary: '"',
+                       exportOptions: {
+                           columns: [1, 2, 3, 4, 5, 6, 7, 8]
+                       }
+                    }
                 ],
                 "sDom": "RZBtir",
                 "iDisplayLength": -1,
-                "autoWidth": true,
                 "bDeferRender": true,
                 "bSortClasses": false,
-                "scrollY": "700px",
-                "scrollCollapse": true,
+                "scrollY": true,
+                "scrollCollapse": false,
                 "paging": false
             } );
 
@@ -302,12 +329,24 @@
                     "targets": 0,
                     "sortable": false
                 }],
-                "order": [[3, "asc"]],
-                "sDom": "RZtir",
+                "order": [[3, "asc" ]],
+                "buttons": [
+                    {
+                       extend: 'csvHtml5',
+                       text: 'Download CSV',
+                       title: 'search_results',
+                       fieldBoundary: '"',
+                       exportOptions: {
+                           columns: [1, 2, 3, 4, 5, 6, 7, 8, 9]
+                       }
+                    }
+                ],
+                "sDom": "RZBtir",
                 "iDisplayLength": -1,
-                "autoWidth": true,
                 "bDeferRender": true,
                 "bSortClasses": false,
+                "scrollY": true,
+                "scrollCollapse": false,
                 "paging": false
             } );
 
diff --git a/wqflask/wqflask/templates/search_result_page.html b/wqflask/wqflask/templates/search_result_page.html
index 4ba2d802..523037f8 100644
--- a/wqflask/wqflask/templates/search_result_page.html
+++ b/wqflask/wqflask/templates/search_result_page.html
@@ -163,7 +163,6 @@
     
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>   
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/dataTables.buttons.min.js"></script>
-    <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/scroller/1.4.1/js/dataTables.scroller.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/buttons.html5.min.js"></script>
     <script language="javascript" type="text/javascript" src="https://cdn.datatables.net/buttons/1.0.0/js/buttons.bootstrap.min.js"></script>
     <script language="javascript" type="text/javascript" src="/static/new/js_external/jszip.min.js"></script>
@@ -171,7 +170,6 @@
     <script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/extensions/dataTables.colResize.js"></script>
     <script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/extensions/dataTables.colReorder.js"></script>
     <script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/extensions/dataTables.fixedHeader.min.js"></script>
-    <script language="javascript" type="text/javascript" src="//cdn.datatables.net/fixedcolumns/3.0.4/js/dataTables.fixedColumns.min.js"></script>
 	
     <script type="text/javascript" charset="utf-8">
         function getValue(x) {