def add_sim(self, name): sim_num = len(self.sims) self.sims.append(picSim(name=name, num=sim_num)) self.sim_names.append(name) sim_params = { 'shock_method': 'Density Half Max', 'Average1D': 0, '2DSlicePlane': 0, # 0 = x-y plane, 1 == x-z plane 'PrtlStride': 5, 'xSlice': 0.0, 'ySlice': 0.5, 'zSlice': 0.5 } if len(self.MainParamDict['sim_params']) < len(self.sims): self.MainParamDict['sim_params'].append(sim_params) else: self.MainParamDict['sim_params'][-1].update(sim_params) if self.sims[-1].xtra_stride != sim_params['PrtlStride']: self.sims[-1].xtra_stride = sim_params['PrtlStride'] if self.MainParamDict['LinkTime']: unit = self.MainParamDict['TimeUnits'] cur_t = self.sims[self.cur_sim].get_time(units=unit) self.sims[-1].set_time(cur_t, units=unit) self.MainParamDict['NumberOfSims'] += 1
def __init__(self, preset_view='Default', interactive=True, tkApp=None): self.IseultDir = os.path.join(os.path.dirname(__file__), '..') self.sim_name = '' self.sims = [picSim(name='sim0')] self.cur_sim = 0 # the curent sim on the playback bar self.sim_names = [sim.name for sim in self.sims] self.sims_shown = [] self.dirname = '' # Create a dictionary to save the axes lims in case spatial # axes are shared across plots. # self.axes_lims = { # 'x': [None, None], # 'y': [None, None], # 'z': [None, None] # } self.interactive = interactive # Create the figure self.figure = plt.figure(edgecolor='none', facecolor='w') if self.interactive: from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg self.canvas = FigureCanvasTkAgg(self.figure, master=tkApp) self.tkApp = tkApp else: from matplotlib.backends.backend_agg import FigureCanvasAgg self.canvas = FigureCanvasAgg(self.figure) # self.canvas.mpl_connect('draw_event', self.on_draw) self.load_view(preset_view)
def add_sim(self, name): self.sims.append(picSim(name=name)) self.sim_names.append(self.sims[-1].name) self.sims[-1].xtra_stride = self.MainParamDict['PrtlStride'] if self.MainParamDict['LinkTime']: unit = self.MainParamDict['TimeUnits'] cur_t = self.sims[self.cur_sim].get_time(units=unit) self.sims[-1].set_time(cur_t, units=unit) self.MainParamDict['NumberOfSims'] += 1
self.image.norm.vmin = self.vmin self.image.norm.vmax = self.vmax if self.param_dict['show_cbar']: self.CbarTickFormatter() def remove(self): try: self.axC.remove() except AttributeError: pass except KeyError: pass self.axes.remove() if __name__ == '__main__': import os from oengus import Oengus from pic_sim import picSim import matplotlib.pyplot as plt oengus = Oengus(interactive=False, preset_view='test') oengus.open_sim( picSim(os.path.join(os.path.dirname(__file__), '../output'))) oengus.create_graphs() plt.savefig('test.png')