From 49f1aa19e79835969c0046c9e2749520e8663472 Mon Sep 17 00:00:00 2001 From: ChrisKent Date: Sun, 22 Sep 2024 15:16:18 +0100 Subject: [PATCH] Removed unwanted plotly elements --- primalscheme3/core/create_reports.py | 23 ++++++++++++++++++++--- primalscheme3/core/primer_visual.py | 13 +++++++++++++ 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/primalscheme3/core/create_reports.py b/primalscheme3/core/create_reports.py index 8fcc9f2..3c31fa2 100644 --- a/primalscheme3/core/create_reports.py +++ b/primalscheme3/core/create_reports.py @@ -223,7 +223,7 @@ def generate_plot_html( col=1, ) - # Add all posible Fkmers + # Add all possible Fkmers fkmer_data = [ (end, num_seqs) for end, num_seqs in msa_data["thermo_pass"]["F"].items() ] @@ -234,11 +234,12 @@ def generate_plot_html( hovertext=[f"Number Seqs: {x[1]}" for x in fkmer_data], marker=dict(symbol="triangle-right", size=10), mode="markers", + name="Passing Forward Primers", ), row=4, col=1, ) - # Add all posible Rkmers + # Add all possible Rkmers rkmer_data = [ (start, num_seqs) for start, num_seqs in msa_data["thermo_pass"]["R"].items() ] @@ -249,6 +250,7 @@ def generate_plot_html( hovertext=[f"Number Seqs: {x[1]}" for x in rkmer_data], marker=dict(symbol="triangle-left", size=10), mode="markers", + name="Passing Reverse Primers", ), row=4, col=1, @@ -292,7 +294,7 @@ def generate_plot_html( tickformat=",d", title_font=dict(size=18, family="Arial", color="Black"), range=[0, length], - title="Position", + title="", # Blank title for all x-axes ) fig.update_yaxes( showline=True, @@ -350,11 +352,26 @@ def generate_plot_html( col=1, secondary_y=False, ) + fig.update_xaxes( + title="Position", row=4, col=1 + ) # Add the x-axis title to the bottom plot # fig.update_layout(paper_bgcolor="#000000") fig.update_layout(height=900, title_text=chromname, showlegend=False) # plot_bgcolor="rgba(246, 237, 202, 0.5)", + # Remove unnecessary plot elements + fig.update_layout( + modebar_remove=[ + "select2d", + "lasso2d", + "select", + "autoScale2d", + "zoom", + "toImage", + ] + ) + # Write a png version of the plot fig.write_image( str(outdir.absolute() / (chromname + ".png")), diff --git a/primalscheme3/core/primer_visual.py b/primalscheme3/core/primer_visual.py index 9082303..3dae091 100644 --- a/primalscheme3/core/primer_visual.py +++ b/primalscheme3/core/primer_visual.py @@ -267,6 +267,7 @@ def primer_mismatch_heatmap( hovertemplate=hovertemplatestr, xgap=0.1, ygap=0.1, + name="Primer Mismatches", ) ) fig.update_layout( @@ -276,6 +277,18 @@ def primer_mismatch_heatmap( ) fig.update_yaxes(autorange="reversed") + # Remove unnecessary plot elements + fig.update_layout( + modebar_remove=[ + "select2d", + "lasso2d", + "select", + "autoScale2d", + "zoom", + "toImage", + ] + ) + return fig.to_html( include_plotlyjs=True if offline_plots else "cdn", full_html=False )