@classmethod
def binomial(cls, k, n, p):
    """
        Visualization for a Binomial distribution
        Args:
            k, n, p (float): parameters to a Binomial distribution
        Returns:
            image (IPython.display.Image): The image that can be displayed inline in a Jupyter notebook
        """
    if not isinstance(k, int):
        raise ValueError(
            'For a Binomial distribution, k should always be an integer.')
    if not isinstance(n, int):
        raise ValueError(
            'For a Binomial distribution, n should always be an integer.')
    if n < 0:
        raise ValueError(
            'For a Binomial distribution, n should be greater than or equal to zero.'
            )
    if not 0 <= k <= n:
        raise ValueError(
            'For a Binomial distribution, k should always be between 0 and n.')
    if not 0 <= p <= 1:
        raise ValueError(
            'For a Binomial distribution, p should always be between 0 and 1.')
    return cls._call_post(dist='binomial', k=k, n=n, p=p)
