Mercurial > repos > jay > gaiac_time_synchronization
annotate gaiac_heatmap/gaiac_heatmap.py @ 3:32c40144e766 draft default tip
planemo upload for repository https://github.com/jaidevjoshi83/gaiac commit e9587f93346c7b55e1be00bad5844bf2db3ed03d-dirty
| author | jay | 
|---|---|
| date | Thu, 10 Jul 2025 19:42:22 +0000 | 
| parents | d3418b0d9b27 | 
| children | 
| rev | line source | 
|---|---|
| 
0
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
1 import numpy as np | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
2 import pandas as pd | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
3 import matplotlib.pyplot as plt | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
4 import seaborn as sns | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
5 import argparse | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
6 #%matplotlib inline | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
7 | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
8 def HeatMap(infile, clm_list, custom_column_labels, outfile, plottitile, fig_height, fig_width): | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
9 | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
10 df=pd.read_csv(infile, sep="\t") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
11 cl = df.columns.tolist() | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
12 clms = [ cl[int(x)-1] for x in clm_list.split(',')] | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
13 | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
14 if custom_column_labels != None: | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
15 labels = custom_column_labels.split(',') | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
16 else: | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
17 labels = clms | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
18 | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
19 sns.set(font_scale=0.6,style='whitegrid') | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
20 plt.figure(figsize=(int(fig_height), int(fig_width))) | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
21 ax = sns.heatmap(df[clms].corr(),annot=True,xticklabels=labels,yticklabels=labels,fmt='.2g') | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
22 bottom, top = ax.get_ylim() | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
23 ax.set_ylim(bottom + 0.5, top - 0.5) | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
24 plt.savefig(outfile,dpi=300,bbox_inches="tight") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
25 | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
26 if __name__=="__main__": | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
27 | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
28 parser = argparse.ArgumentParser() | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
29 parser.add_argument("-I", "--infile", required=True, default=None, help=".tsv") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
30 parser.add_argument("-C", "--column_list", required=False, default=False, help="Path to target tsv file") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
31 parser.add_argument("-L", "--custom_column_name", required=False, default=None, help="Path to target tsv file") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
32 parser.add_argument("-O", "--output", required=False, default='Out.png', help="Path to target tsv file") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
33 parser.add_argument("-T", "--title", required=False, default='Correlation plot', help="Path to target tsv file") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
34 parser.add_argument("-H", "--height", required=False, default='14', help="Path to target tsv file") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
35 parser.add_argument("-W", "--width", required=False, default='12', help="Path to target tsv file") | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
36 | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
37 args = parser.parse_args() | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
38 | 
| 
 
d3418b0d9b27
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
 
jay 
parents:  
diff
changeset
 | 
39 HeatMap(args.infile, args.column_list, args.custom_column_name, args.output, args.title, args.width, args.height) | 
