diff options
Diffstat (limited to 'web/webqtl/heatmap/heatmapPage.py')
-rwxr-xr-x | web/webqtl/heatmap/heatmapPage.py | 116 |
1 files changed, 0 insertions, 116 deletions
diff --git a/web/webqtl/heatmap/heatmapPage.py b/web/webqtl/heatmap/heatmapPage.py deleted file mode 100755 index b407b0c8..00000000 --- a/web/webqtl/heatmap/heatmapPage.py +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright (C) University of Tennessee Health Science Center, Memphis, TN. -# -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU Affero General Public License -# as published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU Affero General Public License for more details. -# -# This program is available from Source Forge: at GeneNetwork Project -# (sourceforge.net/projects/genenetwork/). -# -# Contact Drs. Robert W. Williams and Xiaodong Zhou (2010) -# at rwilliams@uthsc.edu and xzhou15@uthsc.edu -# -# -# -# This module is used by GeneNetwork project (www.genenetwork.org) -# -# Created by GeneNetwork Core Team 2010/08/10 -# -# Last updated by GeneNetwork Core Team 2010/10/20 - -import os -import string -from htmlgen import HTMLgen2 as HT - -from base.templatePage import templatePage -from base import webqtlConfig -from heatmap.Heatmap import Heatmap - - -# XZ, 09/09/2008: After adding several traits to collection, click "QTL Heatmap" button, -# XZ, 09/09/2008: This class will generate what you see. -######################################### -# QTL heatmap Page -######################################### -class heatmapPage(templatePage): - - def __init__(self,fd): - - templatePage.__init__(self, fd) - - if not self.openMysql(): - return - if not fd.genotype: - fd.readGenotype() - - searchResult = fd.formdata.getvalue('searchResult') - if not searchResult: - heading = 'QTL Heatmap' - detail = ['You need to select at least two traits in order to generate QTL heatmap.'] - self.error(heading=heading,detail=detail) - return - if type("1") == type(searchResult): - searchResult = string.split(searchResult,'\t') - if searchResult: - if len(searchResult) > webqtlConfig.MAXCORR: - heading = 'QTL Heatmap' - detail = ['In order to display the QTL heat map properly, do not select more than %d traits for analysis.' % webqtlConfig.MAXCORR] - self.error(heading=heading,detail=detail) - return - else: - heading = 'QTL Heatmap' - detail = [HT.Font('Error : ',color='red'),HT.Font('Error occurs while retrieving data from database.',color='black')] - self.error(heading=heading,detail=detail) - return - self.dict['title'] = 'QTL heatmap' - NNN = len(searchResult) - if NNN == 0: - heading = "QTL Heatmap" - detail = ['No trait was selected for %s data set. No QTL heatmap was generated.' % fd.RISet] - self.error(heading=heading,detail=detail) - return - elif NNN < 2: - heading = 'QTL Heatmap' - detail = ['You need to select at least two traits in order to generate QTL heatmap.'] - self.error(heading=heading,detail=detail) - return - else: - colorScheme = fd.formdata.getvalue('colorScheme') - if not colorScheme: - colorScheme = '1' - heatmapObject = Heatmap(fd=fd, searchResult=searchResult, colorScheme=colorScheme, userPrivilege=self.privilege, userName=self.userName) - filename, areas, sessionfile = heatmapObject.getResult() - gifmap = HT.Map(name='traitMap') - for area in areas: - Areas = HT.Area(shape='rect', coords=area[0], href=area[1], title=area[2]) - gifmap.areas.append(Areas) - img2=HT.Image('/image/'+filename+'.png',border=0,usemap='#traitMap') - imgUrl = 'Right-click or control-click on the link to download this graph as a <a href="/image/%s.png" class="normalsize" target="_blank">PNG file</a>' % filename - form = HT.Form(cgi= os.path.join(webqtlConfig.CGIDIR, webqtlConfig.SCRIPTFILE), enctype='multipart/form-data', name='showDatabase', submit=HT.Input(type='hidden')) - hddn = {'FormID':'showDatabase','ProbeSetID':'_','database':fd.RISet+"Geno",'CellID':'_','RISet':fd.RISet,'searchResult':string.join(searchResult,'\t')} - if fd.incparentsf1: - hddn['incparentsf1']='ON' - for key in hddn.keys(): - form.append(HT.Input(name=key, value=hddn[key], type='hidden')) - heatmapButton = HT.Input(type='button' ,name='mintmap',value='Redraw QTL Heatmap', onClick="databaseFunc(this.form,'heatmap');",Class="button") - spects = {'0':'Single Spectrum','1':'Grey + Blue + Red','2':'Blue + Red'} - schemeMenu = HT.Select(name='colorScheme') - schemeMenu.append(('Single Spectrum',0)) - schemeMenu.append(('Grey + Blue + Red',1)) - schemeMenu.append(('Blue + Red',2)) - schemeMenu.selected.append(spects[colorScheme]) - clusterCheck= HT.Input(type='checkbox', Class='checkbox', name='clusterCheck',checked=0) - targetDescriptionCheck = HT.Input(type='checkbox', Class='checkbox', name='targetDescriptionCheck',checked=0) - form.append(gifmap,schemeMenu, heatmapButton, HT.P(), clusterCheck, ' Cluster traits ', targetDescriptionCheck, ' Add description', HT.P(),img2, HT.P(), imgUrl) - form.append(HT.Input(name='session', value=sessionfile, type='hidden')) - heatmapHelp = HT.Input(type='button' ,name='heatmapHelpButton',value='Info', onClick="openNewWin('/heatmap.html');",Class="button") - heatmapHeading = HT.Paragraph('QTL Heatmap ', heatmapHelp, Class="title") - TD_LR = HT.TD(colspan=2,height=200,width="100%",bgColor='#eeeeee') - TD_LR.append(heatmapHeading, HT.P(),HT.P(),HT.P(),HT.P(),HT.P(),form) - self.dict['body'] = str(TD_LR) |