From e9e58ef05a2e9d3c918b076f287c5422e00f786b Mon Sep 17 00:00:00 2001 From: Colm Talbot <colm.talbot@ligo.org> Date: Mon, 12 Dec 2022 04:24:06 +0000 Subject: [PATCH] BUGFIX: Resolve "Matplotlib error at dynesty checkpoint plot" --- bilby/core/sampler/dynesty.py | 35 +++++++++++++++++++++++++++++------ 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/bilby/core/sampler/dynesty.py b/bilby/core/sampler/dynesty.py index a4e459f59..2d9408661 100644 --- a/bilby/core/sampler/dynesty.py +++ b/bilby/core/sampler/dynesty.py @@ -669,10 +669,14 @@ class Dynesty(NestedSampler): np.linalg.linalg.LinAlgError, ValueError, OverflowError, - Exception, ) as e: logger.warning(e) logger.warning("Failed to create dynesty state plot at checkpoint") + except Exception as e: + logger.warning( + f"Unexpected error {e} in dynesty plotting. " + "Please report at git.ligo.org/lscsoft/bilby/-/issues" + ) finally: plt.close("all") try: @@ -691,34 +695,53 @@ class Dynesty(NestedSampler): np.linalg.linalg.LinAlgError, ValueError, OverflowError, - Exception, ) as e: logger.warning(e) logger.warning("Failed to create dynesty unit state plot at checkpoint") + except Exception as e: + logger.warning( + f"Unexpected error {e} in dynesty plotting. " + "Please report at git.ligo.org/lscsoft/bilby/-/issues" + ) finally: plt.close("all") try: filename = f"{self.outdir}/{self.label}_checkpoint_run.png" - fig, axs = dyplot.runplot( + fig, _ = dyplot.runplot( self.sampler.results, logplot=False, use_math_text=False ) fig.tight_layout() plt.savefig(filename) - except (RuntimeError, np.linalg.linalg.LinAlgError, ValueError) as e: + except ( + RuntimeError, + np.linalg.linalg.LinAlgError, + ValueError, + OverflowError, + ) as e: logger.warning(e) logger.warning("Failed to create dynesty run plot at checkpoint") + except Exception as e: + logger.warning( + f"Unexpected error {e} in dynesty plotting. " + "Please report at git.ligo.org/lscsoft/bilby/-/issues" + ) finally: plt.close("all") try: filename = f"{self.outdir}/{self.label}_checkpoint_stats.png" - fig, axs = dynesty_stats_plot(self.sampler) + fig, _ = dynesty_stats_plot(self.sampler) fig.tight_layout() plt.savefig(filename) - except (RuntimeError, ValueError) as e: + except (RuntimeError, ValueError, OverflowError) as e: logger.warning(e) logger.warning("Failed to create dynesty stats plot at checkpoint") except DynestySetupError: logger.debug("Cannot create Dynesty stats plot with dynamic sampler.") + except Exception as e: + logger.warning( + f"Unexpected error {e} in dynesty plotting. " + "Please report at git.ligo.org/lscsoft/bilby/-/issues" + ) finally: plt.close("all") -- GitLab