def check_data(cls, name, dims, is_unstructured=None):
        """
        A validation method for the data shape

        Parameters
        ----------
        name: str or list of str
            The variable names (at maximum :attr:`allowed_vars` variables per
            array)
        dims: list with length 1 or list of lists with length 1
            The dimension of the arrays. Only 1D-Arrays are allowed
        is_unstructured: bool or list of bool, optional
            True if the corresponding array is unstructured. This keyword is
            ignored

        Returns
        -------
        %(Plotter.check_data.returns)s
        """
        if isinstance(name, six.string_types) or not is_iterable(name):
            name = [name]
            dims = [dims]
        N = len(name)
        if len(dims) != N:
            return [False] * N, [
                'Number of provided names (%i) and dimensions '
                '%(i) are not the same' % (N, len(dims))] * N
        checks = [True] * N
        messages = [''] * N
        for i, (n, d) in enumerate(zip(name, dims)):
            if n != 0 and not n:
                checks[i] = False
                messages[i] = 'At least one variable name is required!'
            elif ((not isstring(n) and is_iterable(n) and
                   len(n) > cls.allowed_vars) and
                  len(d) != (cls.allowed_dims - len(slist(n)))):
                checks[i] = False
                messages[i] = 'Only %i names are allowed per array!' % (
                    cls.allowed_vars)
            elif len(d) != cls.allowed_dims:
                checks[i] = False
                messages[i] = 'Only %i-dimensional arrays are allowed!' % (
                    cls.allowed_dims)
        return checks, messages