def addvars(self, selection): while selection: parent = '' if selection[0] == 'FROM': parent = selection[1] del selection[0:2] vars = list(itertools.takewhile(lambda i: i != 'FROM', selection)) selection = selection[len(vars):] self.selvars.extend([ve.findvar(parent + '.' + v) for v in vars])
def __init__(self, varx='', vary='', dt=1.0, color=None, fig=None): self.x = ve.findvar(varx if vary else 'simt') self.y = ve.findvar(vary or varx) self.dt = dt self.tnext = bs.sim.simt self.color = color if not fig: fig = Plot.maxfig Plot.maxfig += 1 elif fig > Plot.maxfig: Plot.maxfig = fig self.fig = fig self.stream_id = b'PLOT' + bs.stack.sender() if None in (self.x, self.y): raise IndexError('Variable {} not found'.format(varx if self.x is None else (vary or varx))) if not self.x.is_num() or not self.y.is_num(): raise IndexError('Variable {} not numeric'.format(varx if not self.x.is_num() else (vary or varx)))
def __init__(self, varx='', vary='', dt=1.0, fig=None, **params): self.x = ve.findvar(varx if vary else 'simt') self.y = ve.findvar(vary or varx) self.dt = dt self.tnext = bs.sim.simt self.params = params if not fig: fig = Plot.maxfig Plot.maxfig += 1 elif fig > Plot.maxfig: Plot.maxfig = fig self.fig = fig self.stream_id = b'PLOT' + (bs.stack.sender() or b'*') if None in (self.x, self.y): raise IndexError('Variable {} not found'.format(varx if self.x is None else (vary or varx))) # if not self.x.is_num() or not self.y.is_num(): # raise IndexError('Variable {} not numeric'.format(varx if not self.x.is_num() else (vary or varx))) bs.net.send_stream(self.stream_id, {self.fig: params})
def addvars(self, selection): selvars = [] while selection: parent = '' if selection[0] == 'FROM': parent = selection[1] del selection[0:2] vars = list(itertools.takewhile(lambda i: i != 'FROM', selection)) selection = selection[len(vars):] for v in vars: varobj = ve.findvar(parent + '.' + v) if varobj: selvars.append(varobj) else: return False, 'Variable {} not found'.format(v) self.selvars = selvars return True