diff --git a/cami_src/cami.py b/cami_src/cami.py index 8d0c2c0ec6f0aca5422b26ea6582deeb606d1ac3..7747d8d952178b6160e718259e3eb9d889adfd11 100755 --- a/cami_src/cami.py +++ b/cami_src/cami.py @@ -293,15 +293,18 @@ def main(ppi_network, seeds, tools, tool_weights, consensus, evaluate, #PLOT - + # Create a figure instance - plt.figure(figsize=(48,12)) + fig, axs = plt.subplots(2, 1, figsize=(20,15)) + plt.subplots_adjust(left=0.2) + + ax1 = axs[0] + ax5 = axs[1] # Extract Figure and Axes instance - ax1 = plt.subplot(1,2,1, label='ax1') # Create a plot violins1 = ax1.violinplot(redisc_rates, showmeans=True, showextrema=True) - + for violinpart in list(violins1.keys())[2:]: violins1[violinpart].set_color('k') for violin in violins1['bodies']: @@ -313,7 +316,8 @@ def main(ppi_network, seeds, tools, tool_weights, consensus, evaluate, ax1.set_xticklabels(tool_labels) ax1.tick_params(axis='x', labelsize=11) - ax1.set_ylabel('Rediscovery rate (<rediscovered seeds>/<removed seeds>)', wrap=True) + ax1.set_ylabel('Rediscovery rate (<rediscovered seeds>/<removed seeds>)', wrap=True, fontsize=14) + # ax4 = plt.subplot(1,3,2, label='ax4') # violins2 = ax4.violinplot([tp_rate_dict[tool] for tool in tools], showmeans=True, showextrema=True) @@ -329,7 +333,6 @@ def main(ppi_network, seeds, tools, tool_weights, consensus, evaluate, # ax4.set_ylabel('Sensitivity (TP/TP + FN)', wrap=True) - ax5 = plt.subplot(1,2,2) violins3 = ax5.violinplot([module_size_dict[tool] for tool in tools], showmeans=True, showextrema=True) # Add title for violinpart in list(violins3.keys())[2:]: @@ -342,10 +345,10 @@ def main(ppi_network, seeds, tools, tool_weights, consensus, evaluate, ax5.set_xticks(list(range(1,len(tools)+1))) ax5.set_xticklabels(tool_labels) - ax5.set_ylabel('(<rediscovered seeds>/<module size>)') + ax5.set_ylabel('(<rediscovered seeds>/<module size>)', fontsize=14) ax5.tick_params(axis='x', labelsize=11) - plt.tight_layout - plt.savefig(f'{output_dir}/00_{identifier}_seed_variation_result.png') + plt.tight_layout() + fig.savefig(f'{output_dir}/00_{identifier}_seed_variation_result.png', bbox_inches="tight") print(f'Violin plot saved under: 00_{identifier}_seed_variation_result.png') diff --git a/cami_src/cami_suite.py b/cami_src/cami_suite.py index 3365074782c0d76d8d14dc971705bcc39dd2e78b..235b62433cfa3954882c1d58fbe85fd1885ef28d 100644 --- a/cami_src/cami_suite.py +++ b/cami_src/cami_suite.py @@ -184,8 +184,9 @@ class cami(): inputparams = tool.prepare_input() print(f'running {tool.name}...') preds = set(tool.run_algorithm(inputparams)) - print(f'{tool.name} predicted {len(preds)} active vertices (seeds not excluded):') - print(preds) + if self.debug: + print(f'{tool.name} predicted {len(preds)} active vertices (seeds not excluded):') + print(preds) return preds def make_evaluation(self): @@ -361,7 +362,7 @@ class cami(): for vertex in cami_vlist: print(f'{gene_name_map[vertex]}\t{cami_scores[vertex]}\t{codes2tools[vertex]}') else: - print(f'With the {len(seed_genes)} seed genes CAMI ({cami_method_name}) proposes {len(seed_genes)} to add to the Active Module') + print(f'With the {len(seed_genes)} seed genes CAMI ({cami_method_name}) proposes {len(cami_vlist)} to add to the Active Module') # for visualization with nvenn self.result_gene_sets[cami_method_name] = cami_genes @@ -450,7 +451,7 @@ class cami(): degradome_sets = {tool:self.result_gene_sets[tool] for tool in self.result_gene_sets if len(self.result_gene_sets[tool])>0} - url = degradome.send_request(degradome_sets, {self.ppi_vertex2gene[seed] for seed in self.seed_lst}) + url = degradome.send_request(degradome_sets) with open(f'{self.output_dir}/venn_link_{self.uid}.txt', 'w') as f: f.write(url) return url @@ -463,6 +464,7 @@ class cami(): # webbrowser.open(url) else: print('Cannot use degradome to create venn diagrams of 6 or more tools') + return None def download_diagram(self, url): venn_name = f'{self.output_dir}/vdiagram_{self.uid}'