Skip to content

get_color_sequence

yohou.plotting._utils.get_color_sequence(n=None)

Get color sequence for plotting multiple series.

Parameters

Name Type Description Default
n int | None

Number of colors to return. If None, returns all colors. If n exceeds available colors, cycles through the palette.

None

Returns

Type Description
list[str]

List of color hex codes.

Examples

>>> from yohou.plotting._utils import get_color_sequence
>>> colors = get_color_sequence(3)
>>> len(colors)
3
>>> colors[0]
'#2563EB'
>>> # Get all colors
>>> all_colors = get_color_sequence()
>>> len(all_colors)
12
>>> # Cycle through palette for many series
>>> many_colors = get_color_sequence(25)
>>> len(many_colors)
25

Source Code

Show/Hide source
def get_color_sequence(n: int | None = None) -> list[str]:
    """
    Get color sequence for plotting multiple series.

    Parameters
    ----------
    n : int | None, default=None
        Number of colors to return. If None, returns all colors.
        If n exceeds available colors, cycles through the palette.

    Returns
    -------
    list[str]
        List of color hex codes.

    Examples
    --------
    >>> from yohou.plotting._utils import get_color_sequence
    >>> colors = get_color_sequence(3)
    >>> len(colors)
    3
    >>> colors[0]
    '#2563EB'

    >>> # Get all colors
    >>> all_colors = get_color_sequence()
    >>> len(all_colors)
    12

    >>> # Cycle through palette for many series
    >>> many_colors = get_color_sequence(25)
    >>> len(many_colors)
    25
    """
    colors = list(palette_yohou().values())
    if n is None:
        return colors
    return [colors[i % len(colors)] for i in range(n)]