def __init__(self, fs_new=128, channels=1):
        super(EpochViewer, self).__init__()
        self.resize(1000, 1800)
        self.fs_new = fs_new
        self.setWindowTitle('Epoch Viewer')
        self.monitor = QDesktopWidget().screenGeometry(0)
        self.move(self.monitor.left(), self.monitor.top())

        self.plots = []

        streams = resolve_byprop(
            "type", "EPOCH",
            timeout=20)  # Contains information about all available lsl inlets
        if StreamInfo.type(streams[0]) == 'EPOCH':
            self.inlet_epoch = StreamInlet(streams[0])

        self.info = self.inlet_epoch.info()
        ch = self.info.desc().child("channels").child("channel")
        # Check if LSL contains channel labels
        if self.info.desc().child("channels").child("channel").child_value(
                "label"):
            self.channels = []
            for k in range(channels):

                self.channels.append(ch.child_value("label"))
                ch = ch.next_sibling()
        else:
            self.channels = []
            for i in range(0, channels):
                self.channels.append("Channel " + str(i + 1))

        self.x = np.linspace(-0.2, 0.8, self.fs_new)
        self.legend = None
        self.target = True
        self.non_target = True

        self.epochOneAlphas = np.array([0.8, 1, 0.1, 0.2, 0.3])
        self.epochTwoAlphas = np.array([0.8, 1, 0.1, 0.2, 0.3])

        self.epochOneWidth = np.array([3, 5, 0.2, 0.5, 1])
        self.epochTwoWidth = np.array([3, 5, 0.2, 0.5, 1])

        self.linesPlotted = False
        self.epochOne = [[0 for i in range(5)]
                         for c in range(len(self.channels))]
        self.epochTwo = [[0 for i in range(5)]
                         for c in range(len(self.channels))]
        self.epochOneIndex = 0
        self.epochTwoIndex = 0

        self.ci.layout.setColumnMaximumWidth(0, 700)
        self.ci.layout.setColumnMaximumWidth(1, 700)
        for i in range(len(self.channels)):
            p = self.addPlot(title="%s" % self.channels[i], rowspan=1)
            # p.setYRange(-2, 2)
            self.plots.append(p)

            # p.addLegend()
            if i == 0:
                l = pg.LegendItem((10, 10), offset=(-10, 10))
                l.setParentItem(p.graphicsItem())
                self.legend = l

            p.enableAutoRange(axis=pg.ViewBox.YAxis, enable=True)
            # p.enableAutoRange(x=False, y=True)
            if i % 2:
                self.nextRow()
        self.createTimer()