Skip to content
Snippets Groups Projects
Commit 00deb98f authored by 数学の武士's avatar 数学の武士
Browse files

Add new arguments to multiple_plot:

Add linewidth, legend, colors, dpi
parent fbf060aa
No related branches found
No related tags found
No related merge requests found
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):
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):
if out == "plotter_lib_pngs/":
print("Output directory name can't be equal to " + out)
sys.exit(-1)
......@@ -20,6 +20,10 @@ class Args:
self.plane_type = plane_type
self.slice_position = slice_position
self.ifTranspose = ifTranspose
self.linewidth = linewidth
self.legend = legend
self.colors = colors
self.dpi = dpi
self.CorrVals()
......
......@@ -14,23 +14,27 @@ class Plotter:
def __init__(self):
self.ani_period = float(1./20.)
self.filename = None
self.out = None
self.oname = None
self.var = None
self.mval = None
self.function = None
self.file_column_names = None
self.title = None
self.file_data = None
self.plt_max_val = None
self.plt_min_val = None
self.min_y = None
self.max_y = None
self.min_max_var_vals = None
self.plane_type = None
self.slice_position = None
self.ifTranspose = False
# self.filename = None
# self.out = None
# self.oname = None
# self.var = None
# self.mval = None
# self.function = None
# self.file_column_names = None
# self.title = None
# self.file_data = None
# self.plt_max_val = None
# self.plt_min_val = None
# self.min_y = None
# self.max_y = None
# self.min_max_var_vals = None
# self.plane_type = None
# self.slice_position = None
# self.ifTranspose = False
# self.linewidth = 4
# self.legend = None
# self.colors = None
# self.dpi = None
def __check_arg_dim_equiv(self, args):
if args.var != None and args.mval != None:
......@@ -92,6 +96,10 @@ class Plotter:
self.plane_type = args.plane_type
self.slice_position = args.slice_position
self.ifTranspose = args.ifTranspose
self.linewidth = args.linewidth
self.legend = args.legend
self.colors = args.colors
self.dpi = args.dpi
if args.levels != None:
self.levels = args.levels
......@@ -205,15 +213,20 @@ class Plotter:
y_name = self.var[i]
fig = plt.figure()
color_i = 0
for read_data in self.file_data:
if self.ifTranspose:
plt.plot(read_data.data[y_name], read_data.data[x_name], linewidth=4)
plt.plot(read_data.data[y_name], read_data.data[x_name], linewidth=self.linewidth, color = self.colors[color_i])
else:
plt.plot(read_data.data[x_name], read_data.data[y_name], linewidth=4)
plt.plot(read_data.data[x_name], read_data.data[y_name], linewidth=self.linewidth, color = self.colors[color_i])
color_i += 1
if self.legend is not None:
plt.legend(self.legend)
else:
plt.legend(self.filename)
if self.ifTranspose:
if self.ifTranspose is False:
plt.xlabel(x_name, fontsize=10, fontweight='bold')
plt.ylabel(y_name, fontsize=10, fontweight='bold')
else:
......@@ -222,7 +235,11 @@ class Plotter:
if self.if_manual_plot: plt.show()
else: plt.close(fig)
if self.if_save_result: fig.savefig(self.out + self.fig_names[i] + self.fig_end)
if self.if_save_result:
if self.dpi is not None:
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)
def __get_min_max_ax(self):
min_max_var_vals = {var : [] for var in self.var}
......
......@@ -26,9 +26,9 @@ 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):
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):
Plot = Plotter()
args = Args(filename, Plot.multiple_plot, var=var, mval=mval, oname=oname, out=out, ifTranspose=ifTranspose)
args = Args(filename, Plot.multiple_plot, var=var, mval=mval, oname=oname, out=out, ifTranspose=ifTranspose, linewidth=linewidth, legend=legend, colors=colors, dpi=dpi)
Plot.set(args, if_manual_plot=manual_plot, if_save_result=save_result)
Plot.multiple_plot()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment