def __init__(self, ax, data, pathData, callback=None, tolerance=3, maxPoints=10): self.ax = ax self.data = data plotArray2D(ax, self.data) self.callback = callback self.dragIndex = None self.tolerance = tolerance self.maxPoints = maxPoints self.cidpress = ax.figure.canvas.mpl_connect('button_press_event', self.onClick) self.cidrelease = ax.figure.canvas.mpl_connect('button_release_event', self.onRelease) self.cidmotion = ax.figure.canvas.mpl_connect('motion_notify_event', self.onMotion) self.cidkey = ax.figure.canvas.mpl_connect('key_press_event', self.onKeyPress) self.pathData = pathData if pathData.getSize(): # this means there is a path self.setState(STATE_ADJUST_POINTS) self.plotPath() else: self.setState(STATE_NO_POINTS) self.path_line = None self.path_points = None
def createPlots(self, ax): plotArray2D(ax, self.data) self.createSelectionPlot(ax)