Mercurial > repos > xuebing > sharplabtool
diff tools/rgenetics/rgManQQ_code.py @ 0:9071e359b9a3
Uploaded
author | xuebing |
---|---|
date | Fri, 09 Mar 2012 19:37:19 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/rgenetics/rgManQQ_code.py Fri Mar 09 19:37:19 2012 -0500 @@ -0,0 +1,50 @@ +from galaxy import datatypes,model +import sys,string,time + + +def timenow(): + """return current time as a string + """ + return time.strftime('%d/%m/%Y %H:%M:%S', time.localtime(time.time())) + + +def get_phecols(i,addNone,hint): + """ + return a list of phenotype columns for a multi-select list + """ + hint = hint.lower() + fname = i.dataset.file_name + try: + f = open(fname,'r') + except: + return [('get_phecols unable to open file "%s"' % fname,'None',False),] + header = f.next() + h = header.strip().split() + dat = [(x,'%d' % i,False) for i,x in enumerate(h)] + matches = [i for i,x in enumerate(h) if x.lower().find(hint) <> -1] + if len(matches) > 0: + sel = matches[0] + dat[sel] = (dat[sel][0],dat[sel][1],True) + if addNone: + dat.insert(0,('None - no Manhattan plot','0', False )) + return dat + + +def exec_after_process(app, inp_data, out_data, param_dict, tool, stdout, stderr): + """Sets the name of the data + <outputs> + <data format="pdf" name="allqq" /> + <data format="pdf" name="lowqq" parent="allqq"/> + </outputs> + """ + outfile = 'out_html' + job_name = param_dict.get( 'name', 'Manhattan QQ plots' ) + killme = string.punctuation + string.whitespace + trantab = string.maketrans(killme,'_'*len(killme)) + newname = '%s.html' % job_name.translate(trantab) + data = out_data[outfile] + data.name = newname + data.info='%s run at %s' % (job_name,timenow()) + out_data[outfile] = data + app.model.context.flush() +