# Generated by detroit
# See https://github.com/bourbonut/detroit/tree/main/api_maker

from functools import partial
from operator import is_not

class scaleSequentialQuantile:
    def __init__(self, content="scaleSequentialQuantile"):
        self.content = content

    def __repr__(self):
        return self.content

    def __str__(self):
        return self.content

    def __call__(self, *args):
        arguments = ", ".join(map(repr, args))
        return f"{self}({arguments})"

    def quantiles(self, n=None):
        """
        Source · Returns an array of n + 1 quantiles.
        .. code:: javascript

            const color = d3.scaleSequentialQuantile()
                .domain(penguins.map((d) => d.body_mass_g))
                .interpolator(d3.interpolateBlues);

            color.quantiles(4); // [2700, 3550, 4050, 4750, 6300]

        For example, if n = 4, returns an array of five numbers: the minimum value, the first
        quartile, the median, the third quartile, and the maximum.

        See more informations `here <https://d3js.org/d3-scale/sequential#sequentialQuantile_quantiles>`_.
        """
        arguments = ", ".join(map(repr, filter(partial(is_not, None), (n,))))
        return scaleSequentialQuantile(content=f"{self.content}.quantiles({arguments})")


    def domain(self, domain=None):
        """
        Auto generated method
        """
        arguments = ", ".join(map(repr, filter(partial(is_not, None), (domain,))))
        return scaleSequentialQuantile(content=f"{self.content}.domain({arguments})")


    def nice(self):
        """
        Auto generated method
        """
        return scaleSequentialQuantile(content=f"{self.content}.nice()")

