diff --git a/plotter/Args.py b/plotter/Args.py index 7364793586ee5b62dc83efa14dd07dbd74b259c3..d75c1f6c769992edf12404184ec97280afe7c8e7 100644 --- a/plotter/Args.py +++ b/plotter/Args.py @@ -1,7 +1,7 @@ import sys import numpy as np class Args: - def __init__(self, filename, func, var=None, mval=None, oname=None, out=None, ndim = None, min_y = None, max_y = None, title=None, levels=None, plane_type = None, slice_position = None, ifTranspose=False, linewidth = None, legend = None, colors = None, dpi=None): + def __init__(self, filename, func, var=None, mval=None, oname=None, out=None, ndim = None, min_y = None, max_y = None, title=None, levels=None, plane_type = None, slice_position = None, ifTranspose=False, linewidth = None, legend = None, colors = None, dpi=None, line_type = None): if out == "plotter_lib_pngs/": print("Output directory name can't be equal to " + out) sys.exit(-1) @@ -24,6 +24,7 @@ class Args: self.legend = legend self.colors = colors self.dpi = dpi + self.line_type = line_type self.CorrVals() diff --git a/plotter/Plotter.py b/plotter/Plotter.py index 302a8b2901a8150f9b8b704b406934bb4e1108fb..a4077fe183b6039e97c7b31c8d64886f02bdaad6 100755 --- a/plotter/Plotter.py +++ b/plotter/Plotter.py @@ -99,6 +99,7 @@ class Plotter: self.linewidth = args.linewidth self.legend = args.legend self.colors = args.colors + self.line_type = args.line_type self.dpi = args.dpi if args.levels != None: @@ -208,6 +209,7 @@ class Plotter: # else: # fig_names = self.oname # fig_end = "" + figures = [] for i in range(self.fig_count): y_name = self.var[i] @@ -215,10 +217,14 @@ class Plotter: color_i = 0 for read_data in self.file_data: + if self.line_type is not None: + lt = self.line_type[color_i] + else: + lt = '-' if self.ifTranspose: - plt.plot(read_data.data[y_name], read_data.data[x_name], linewidth=self.linewidth, color = self.colors[color_i]) + plt.plot(read_data.data[y_name], read_data.data[x_name], linewidth=self.linewidth, color = self.colors[color_i], linestyle = lt) else: - plt.plot(read_data.data[x_name], read_data.data[y_name], linewidth=self.linewidth, color = self.colors[color_i]) + plt.plot(read_data.data[x_name], read_data.data[y_name], linewidth=self.linewidth, color = self.colors[color_i], linestyle = lt) color_i += 1 if self.legend is not None: @@ -240,6 +246,9 @@ class Plotter: fig.savefig(self.out + self.fig_names[i] + self.fig_end, dpi = self.dpi) else: fig.savefig(self.out + self.fig_names[i] + self.fig_end) + + figures.append(fig) + return figures def __get_min_max_ax(self): min_max_var_vals = {var : [] for var in self.var} @@ -773,7 +782,7 @@ class Plotter: def multiple_plot(self): self.__get_min_max_ax() - self.__multiple_plot() + return self.__multiple_plot() def slice(self): self.__get_min_max_bar() diff --git a/plotter/main.py b/plotter/main.py index cad62c3b080297e11db2d3eeb49b5b6ab55e1ee7..ba7e2653fd314cdf3315d75642238fef7f071d21 100755 --- a/plotter/main.py +++ b/plotter/main.py @@ -26,11 +26,11 @@ def joint_plot(filename, out = './', oname = [None], var=[None], mval=[None], mi Plot.set(args, if_manual_plot=manual_plot, if_save_result=save_result) Plot.joint_plot() -def multiple_plot(filename, out = './', oname = 'fig.png', var=[None], mval=[None], min_y = None, max_y = None, ifTranspose=False, linewidth = None, legend = None, colors = None, dpi=None): +def multiple_plot(filename, out = './', oname = 'fig.png', var=[None], mval=[None], min_y = None, max_y = None, ifTranspose=False, linewidth = None, legend = None, colors = None, dpi=None, line_type = None): Plot = Plotter() - args = Args(filename, Plot.multiple_plot, var=var, mval=mval, oname=oname, out=out, ifTranspose=ifTranspose, linewidth=linewidth, legend=legend, colors=colors, dpi=dpi) + args = Args(filename, Plot.multiple_plot, var=var, mval=mval, oname=oname, out=out, ifTranspose=ifTranspose, linewidth=linewidth, legend=legend, colors=colors, dpi=dpi, line_type=line_type) Plot.set(args, if_manual_plot=manual_plot, if_save_result=save_result) - Plot.multiple_plot() + return Plot.multiple_plot() def ani_plot(filename, out = './', oname = 'fig.gif', var=[None], mval=[None], min_y = None, max_y = None, ifTranspose=False): pp = str(PurePath(filename).parent) + '/'