def add(self, x, y):
        """
        Add scalar *x* and *y* to the queue.
        """
        if self.dataLim is not None:
            xy = np.asarray([(x,y),])
            self.dataLim.update_from_data_xy(xy, None)

        ind = self._ind % self._nmax
        #print 'adding to fifo:', ind, x, y
        self._xs[ind] = x
        self._ys[ind] = y

        for N,funcs in self.callbackd.items():
            if (self._ind%N)==0:
                for func in funcs:
                    func(self)

        self._ind += 1