def __init__(self, data, title, template, top, left, width, height, min_y, max_y,
                     xticks_spacing, customize_func, customize_kwargs):
            ItemSize.__init__(self, width, height)
            self.top = top
            self.left = left
            self.title = str(title) if title is not None else None
            data = asarray(data)
            if not (1 <= data.ndim <= 2):
                raise ValueError(f"Expected 1D or 2D array for data argument. Got array of dimensions {data.ndim}")
            self.data = data
            if template is not None:
                template = Path(template)
                if not template.is_file():
                    raise ValueError(f"Could not find template file {template}")
            self.template = template
            self.min_y = min_y
            self.max_y = max_y
            self.xticks_spacing = xticks_spacing
            if customize_func is not None and not callable(customize_func):
                raise TypeError(f"Expected a function for the argument 'customize_func'. "
                                f"Got object of type {type(customize_func).__name__} instead.")
            self.customize_func = customize_func
            self.customize_kwargs = customize_kwargs