BodyBalanceEvaluation/backend/venv/Lib/site-packages/matplotlib/typing.py
2025-07-31 17:23:05 +08:00

79 lines
2.4 KiB
Python

"""
Typing support for Matplotlib
This module contains Type aliases which are useful for Matplotlib and potentially
downstream libraries.
.. admonition:: Provisional status of typing
The ``typing`` module and type stub files are considered provisional and may change
at any time without a deprecation period.
"""
from collections.abc import Hashable, Sequence
import pathlib
from typing import Any, Callable, Literal, TypeAlias, TypeVar, Union
from . import path
from ._enums import JoinStyle, CapStyle
from .artist import Artist
from .backend_bases import RendererBase
from .markers import MarkerStyle
from .transforms import Bbox, Transform
RGBColorType: TypeAlias = tuple[float, float, float] | str
RGBAColorType: TypeAlias = (
str | # "none" or "#RRGGBBAA"/"#RGBA" hex strings
tuple[float, float, float, float] |
# 2 tuple (color, alpha) representations, not infinitely recursive
# RGBColorType includes the (str, float) tuple, even for RGBA strings
tuple[RGBColorType, float] |
# (4-tuple, float) is odd, but accepted as the outer float overriding A of 4-tuple
tuple[tuple[float, float, float, float], float]
)
ColorType: TypeAlias = RGBColorType | RGBAColorType
RGBColourType: TypeAlias = RGBColorType
RGBAColourType: TypeAlias = RGBAColorType
ColourType: TypeAlias = ColorType
LineStyleType: TypeAlias = str | tuple[float, Sequence[float]]
DrawStyleType: TypeAlias = Literal["default", "steps", "steps-pre", "steps-mid",
"steps-post"]
MarkEveryType: TypeAlias = (
None |
int | tuple[int, int] | slice | list[int] |
float | tuple[float, float] |
list[bool]
)
MarkerType: TypeAlias = str | path.Path | MarkerStyle
FillStyleType: TypeAlias = Literal["full", "left", "right", "bottom", "top", "none"]
JoinStyleType: TypeAlias = JoinStyle | Literal["miter", "round", "bevel"]
CapStyleType: TypeAlias = CapStyle | Literal["butt", "projecting", "round"]
CoordsBaseType = Union[
str,
Artist,
Transform,
Callable[
[RendererBase],
Union[Bbox, Transform]
]
]
CoordsType = Union[
CoordsBaseType,
tuple[CoordsBaseType, CoordsBaseType]
]
RcStyleType: TypeAlias = (
str |
dict[str, Any] |
pathlib.Path |
Sequence[str | pathlib.Path | dict[str, Any]]
)
_HT = TypeVar("_HT", bound=Hashable)
HashableList: TypeAlias = list[_HT | "HashableList[_HT]"]
"""A nested list of Hashable values."""