def create_dvh(structure, dcm_struct, dcm_dose): structure_dose_values = find_dose_within_structure(structure, dcm_struct, dcm_dose) hist = np.histogram(structure_dose_values, 100) freq = hist[0] bin_edge = hist[1] bin_mid = (bin_edge[1::] + bin_edge[:-1:]) / 2 cumulative = np.cumsum(freq[::-1]) cumulative = cumulative[::-1] bin_mid = np.append([0], bin_mid) cumulative = np.append(cumulative[0], cumulative) percent_cumulative = cumulative / cumulative[0] * 100 plt.plot(bin_mid, percent_cumulative, label=structure) plt.title("DVH") plt.xlabel("Dose (Gy)") plt.ylabel("Relative Volume (%)")
def plot_insert(insert_x, insert_y, width, length, circle_centre): circle, ellipse = visual_circle_and_ellipse(insert_x, insert_y, width, length, circle_centre) plt.figure() plt.plot(insert_x, insert_y) plt.axis("equal") plt.plot(circle["x"], circle["y"]) plt.title("Insert shape parameterisation") plt.xlabel("x (cm)") plt.ylabel("y (cm)") plt.grid(True) plt.plot(ellipse["x"], ellipse["y"])
def plot(self): """Plot the profile.""" plt.plot(self.values) plt.show()