Source code for desk.outputs.plot_pdf

import ipdb
import numpy as np
import matplotlib.pyplot as plt
from desk.set_up import config


[docs] def plot(par, pdf, bin_total_prob, best): """ Creates png with probability distribution of given parameter. Parameters ---------- par: str paramter name pdf : class probability distribtion function from create_pdf. bin_total_prob : 1D array Description of parameter `bin_total_prob`. best: float best value Returns ------- creates png probability plot. """ label = par.replace("_", " ") trimmed_idx = np.where(bin_total_prob > 0) prob_norm = bin_total_prob[trimmed_idx] / np.sum(bin_total_prob[trimmed_idx]) fig = plt.figure(figsize=(4, 4)) ax1 = fig.add_subplot(1, 1, 1) ax1.fill_between( pdf.bin_vals[trimmed_idx], prob_norm, alpha=0.2, color="b", zorder=10 ) ax1.axvline(x=best, linestyle="--", c="k", lw=0.5) # labels ax1.set_ylabel("Probability") ax1.set_xlabel(label) # save and close figure fig.savefig( config.path + "outputs/pdf_" + par + ".png", dpi=200, bbox_inches="tight", overwrite=True, ) plt.close()