Mercurial > repos > jay > gaiac_sensor_performance_evaluation
comparison gaiac_boxplot/gaiac_boxplot.py @ 0:7c9552ed8676 draft
planemo upload for repository https://github.com/jaidevjoshi83/gaiac.git commit c29a769ed165f313a6410925be24f776652a9663-dirty
author | jay |
---|---|
date | Thu, 15 May 2025 14:46:49 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:7c9552ed8676 |
---|---|
1 import numpy as np | |
2 import pandas as pd | |
3 import matplotlib.pyplot as plt | |
4 import seaborn as sns | |
5 import argparse as argparse | |
6 | |
7 def violinplot(infile,clm_list_y, custom_xtick_labels, outfile, plottitle,fig_height, fig_width, clm_lab_y, clm_lab_x): | |
8 | |
9 df=pd.read_csv(infile, sep="\t") | |
10 cl = df.columns.tolist() | |
11 clms = [cl[int(x)-1] for x in clm_list_y.split(',')] | |
12 | |
13 if custom_xtick_labels != None: | |
14 labels = custom_xtick_labels.split(',') | |
15 else: | |
16 labels = clms | |
17 plt.figure(figsize=(int(fig_height),int(fig_width))) | |
18 sns.set(font_scale=0.8,style='whitegrid') | |
19 fig=sns.boxplot(data=df[clms]) | |
20 fig.set_ylabel(clm_lab_y) | |
21 fig.set_xlabel(clm_lab_x) | |
22 fig.set_xticklabels(labels) | |
23 fig.set_title(plottitle) | |
24 plt.tight_layout | |
25 plt.savefig(outfile,dpi=300,bbox_inches="tight") | |
26 | |
27 if __name__=="__main__": | |
28 | |
29 parser = argparse.ArgumentParser() | |
30 parser.add_argument("-I", "--infile", required=True, default=None, help=".tsv") | |
31 parser.add_argument("-C", "--column_list_y", required=False, default=False, help="Path to target tsv file") | |
32 parser.add_argument("-L", "--custom_xtick_name", required=False, default=None, help="Path to target tsv file") | |
33 parser.add_argument("-O", "--output", required=False, default='Out.png', help="Path to target tsv file") | |
34 parser.add_argument("-T", "--title", required=False, default='Time Series plot', help="Path to target tsv file") | |
35 parser.add_argument("-H", "--height", required=False, default='14', help="Path to target tsv file") | |
36 parser.add_argument("-W", "--width", required=False, default='12', help="Path to target tsv file") | |
37 parser.add_argument("-Y", "--ylab", required=False, default='Y label', help="Path to target tsv file") | |
38 parser.add_argument("-X", "--xlab", required=False, default='X label(time)', help="Path to target tsv file") | |
39 args = parser.parse_args() | |
40 | |
41 violinplot(args.infile, args.column_list_y, args.custom_xtick_name, args.output, args.title, args.width, args.height, args.ylab, args.xlab) |