docs: def add_data_point(self, x, y):
          """Adds a data point to the series.
  
          :param x: The numerical x value to be added.
          :param y: The numerical y value to be added."""
  
          if not is_numeric(x):
              raise TypeError("x value must be numeric, not '%s'" % str(x))
          if not is_numeric(y):
              raise TypeError("y value must be numeric, not '%s'" % str(y))
          current_last_x = self._data[-1][0]
          self._data.append((x, y))
          if x < current_last_x:
              self._data = sorted(self._data, key=lambda k: k[0])