def __init__(self, data, window_sizes=None, regions=None, title='', midpoint=None,
                 colormap='coolwarm_r', vmax=None, current_window_size=0, log_y=True):
        if regions is None:
            regions = []
            for i in range(data.shape[1]):
                regions.append(GenomicRegion(chromosome='', start=i, end=i))
        self.regions = regions

        BasePlotter1D.__init__(self, title=title)
        self.da = data
        if window_sizes is None:
            window_sizes = []
            try:
                l = len(data)
            except TypeError:
                l = data.shape[0]
            for i in range(l):
                window_sizes.append(i)

        self.window_sizes = window_sizes
        self.colormap = colormap
        self.midpoint = midpoint
        self.mesh = None
        self.vmax = vmax
        self.window_size_line = None
        self.current_window_size = current_window_size
        self.log_y = log_y