279 lines
9.8 KiB
Python
279 lines
9.8 KiB
Python
from collections.abc import Callable, Iterable, Sequence
|
|
import datetime
|
|
from typing import Any, Literal, overload
|
|
|
|
import numpy as np
|
|
from numpy.typing import ArrayLike
|
|
|
|
import matplotlib.artist as martist
|
|
from matplotlib import cbook
|
|
from matplotlib.axes import Axes
|
|
from matplotlib.backend_bases import RendererBase
|
|
from matplotlib.lines import Line2D
|
|
from matplotlib.text import Text
|
|
from matplotlib.ticker import Locator, Formatter
|
|
from matplotlib.transforms import Transform, Bbox
|
|
from matplotlib.typing import ColorType
|
|
|
|
|
|
GRIDLINE_INTERPOLATION_STEPS: int
|
|
|
|
class Tick(martist.Artist):
|
|
axes: Axes
|
|
tick1line: Line2D
|
|
tick2line: Line2D
|
|
gridline: Line2D
|
|
label1: Text
|
|
label2: Text
|
|
def __init__(
|
|
self,
|
|
axes: Axes,
|
|
loc: float,
|
|
*,
|
|
size: float | None = ...,
|
|
width: float | None = ...,
|
|
color: ColorType | None = ...,
|
|
tickdir: Literal["in", "inout", "out"] | None = ...,
|
|
pad: float | None = ...,
|
|
labelsize: float | None = ...,
|
|
labelcolor: ColorType | None = ...,
|
|
labelfontfamily: str | Sequence[str] | None = ...,
|
|
zorder: float | None = ...,
|
|
gridOn: bool | None = ...,
|
|
tick1On: bool = ...,
|
|
tick2On: bool = ...,
|
|
label1On: bool = ...,
|
|
label2On: bool = ...,
|
|
major: bool = ...,
|
|
labelrotation: float = ...,
|
|
grid_color: ColorType | None = ...,
|
|
grid_linestyle: str | None = ...,
|
|
grid_linewidth: float | None = ...,
|
|
grid_alpha: float | None = ...,
|
|
**kwargs
|
|
) -> None: ...
|
|
def get_tickdir(self) -> Literal["in", "inout", "out"]: ...
|
|
def get_tick_padding(self) -> float: ...
|
|
def get_children(self) -> list[martist.Artist]: ...
|
|
stale: bool
|
|
def set_pad(self, val: float) -> None: ...
|
|
def get_pad(self) -> None: ...
|
|
def get_loc(self) -> float: ...
|
|
def set_label1(self, s: object) -> None: ...
|
|
def set_label(self, s: object) -> None: ...
|
|
def set_label2(self, s: object) -> None: ...
|
|
def set_url(self, url: str | None) -> None: ...
|
|
def get_view_interval(self) -> ArrayLike: ...
|
|
def update_position(self, loc: float) -> None: ...
|
|
|
|
class XTick(Tick):
|
|
__name__: str
|
|
def __init__(self, *args, **kwargs) -> None: ...
|
|
stale: bool
|
|
def update_position(self, loc: float) -> None: ...
|
|
def get_view_interval(self) -> np.ndarray: ...
|
|
|
|
class YTick(Tick):
|
|
__name__: str
|
|
def __init__(self, *args, **kwargs) -> None: ...
|
|
stale: bool
|
|
def update_position(self, loc: float) -> None: ...
|
|
def get_view_interval(self) -> np.ndarray: ...
|
|
|
|
class Ticker:
|
|
def __init__(self) -> None: ...
|
|
@property
|
|
def locator(self) -> Locator | None: ...
|
|
@locator.setter
|
|
def locator(self, locator: Locator) -> None: ...
|
|
@property
|
|
def formatter(self) -> Formatter | None: ...
|
|
@formatter.setter
|
|
def formatter(self, formatter: Formatter) -> None: ...
|
|
|
|
class _LazyTickList:
|
|
def __init__(self, major: bool) -> None: ...
|
|
# Replace return with Self when py3.9 is dropped
|
|
@overload
|
|
def __get__(self, instance: None, owner: None) -> _LazyTickList: ...
|
|
@overload
|
|
def __get__(self, instance: Axis, owner: type[Axis]) -> list[Tick]: ...
|
|
|
|
class Axis(martist.Artist):
|
|
OFFSETTEXTPAD: int
|
|
isDefault_label: bool
|
|
axes: Axes
|
|
major: Ticker
|
|
minor: Ticker
|
|
callbacks: cbook.CallbackRegistry
|
|
label: Text
|
|
offsetText: Text
|
|
labelpad: float
|
|
pickradius: float
|
|
def __init__(self, axes, *, pickradius: float = ...,
|
|
clear: bool = ...) -> None: ...
|
|
@property
|
|
def isDefault_majloc(self) -> bool: ...
|
|
@isDefault_majloc.setter
|
|
def isDefault_majloc(self, value: bool) -> None: ...
|
|
@property
|
|
def isDefault_majfmt(self) -> bool: ...
|
|
@isDefault_majfmt.setter
|
|
def isDefault_majfmt(self, value: bool) -> None: ...
|
|
@property
|
|
def isDefault_minloc(self) -> bool: ...
|
|
@isDefault_minloc.setter
|
|
def isDefault_minloc(self, value: bool) -> None: ...
|
|
@property
|
|
def isDefault_minfmt(self) -> bool: ...
|
|
@isDefault_minfmt.setter
|
|
def isDefault_minfmt(self, value: bool) -> None: ...
|
|
majorTicks: _LazyTickList
|
|
minorTicks: _LazyTickList
|
|
def get_remove_overlapping_locs(self) -> bool: ...
|
|
def set_remove_overlapping_locs(self, val: bool) -> None: ...
|
|
@property
|
|
def remove_overlapping_locs(self) -> bool: ...
|
|
@remove_overlapping_locs.setter
|
|
def remove_overlapping_locs(self, val: bool) -> None: ...
|
|
stale: bool
|
|
def set_label_coords(
|
|
self, x: float, y: float, transform: Transform | None = ...
|
|
) -> None: ...
|
|
def get_transform(self) -> Transform: ...
|
|
def get_scale(self) -> str: ...
|
|
def limit_range_for_scale(
|
|
self, vmin: float, vmax: float
|
|
) -> tuple[float, float]: ...
|
|
def get_children(self) -> list[martist.Artist]: ...
|
|
# TODO units
|
|
converter: Any
|
|
units: Any
|
|
def clear(self) -> None: ...
|
|
def reset_ticks(self) -> None: ...
|
|
def set_tick_params(
|
|
self,
|
|
which: Literal["major", "minor", "both"] = ...,
|
|
reset: bool = ...,
|
|
**kwargs
|
|
) -> None: ...
|
|
def get_tick_params(
|
|
self, which: Literal["major", "minor"] = ...
|
|
) -> dict[str, Any]: ...
|
|
def get_view_interval(self) -> tuple[float, float]: ...
|
|
def set_view_interval(
|
|
self, vmin: float, vmax: float, ignore: bool = ...
|
|
) -> None: ...
|
|
def get_data_interval(self) -> tuple[float, float]: ...
|
|
def set_data_interval(
|
|
self, vmin: float, vmax: float, ignore: bool = ...
|
|
) -> None: ...
|
|
def get_inverted(self) -> bool: ...
|
|
def set_inverted(self, inverted: bool) -> None: ...
|
|
def set_default_intervals(self) -> None: ...
|
|
def get_tightbbox(
|
|
self, renderer: RendererBase | None = ..., *, for_layout_only: bool = ...
|
|
) -> Bbox | None: ...
|
|
def get_tick_padding(self) -> float: ...
|
|
def get_gridlines(self) -> list[Line2D]: ...
|
|
def get_label(self) -> Text: ...
|
|
def get_offset_text(self) -> Text: ...
|
|
def get_pickradius(self) -> float: ...
|
|
def get_majorticklabels(self) -> list[Text]: ...
|
|
def get_minorticklabels(self) -> list[Text]: ...
|
|
def get_ticklabels(
|
|
self, minor: bool = ..., which: Literal["major", "minor", "both"] | None = ...
|
|
) -> list[Text]: ...
|
|
def get_majorticklines(self) -> list[Line2D]: ...
|
|
def get_minorticklines(self) -> list[Line2D]: ...
|
|
def get_ticklines(self, minor: bool = ...) -> list[Line2D]: ...
|
|
def get_majorticklocs(self) -> np.ndarray: ...
|
|
def get_minorticklocs(self) -> np.ndarray: ...
|
|
def get_ticklocs(self, *, minor: bool = ...) -> np.ndarray: ...
|
|
def get_ticks_direction(self, minor: bool = ...) -> np.ndarray: ...
|
|
def get_label_text(self) -> str: ...
|
|
def get_major_locator(self) -> Locator: ...
|
|
def get_minor_locator(self) -> Locator: ...
|
|
def get_major_formatter(self) -> Formatter: ...
|
|
def get_minor_formatter(self) -> Formatter: ...
|
|
def get_major_ticks(self, numticks: int | None = ...) -> list[Tick]: ...
|
|
def get_minor_ticks(self, numticks: int | None = ...) -> list[Tick]: ...
|
|
def grid(
|
|
self,
|
|
visible: bool | None = ...,
|
|
which: Literal["major", "minor", "both"] = ...,
|
|
**kwargs
|
|
) -> None: ...
|
|
# TODO units
|
|
def update_units(self, data): ...
|
|
def have_units(self) -> bool: ...
|
|
def convert_units(self, x): ...
|
|
def set_units(self, u) -> None: ...
|
|
def get_units(self): ...
|
|
def set_label_text(
|
|
self, label: str, fontdict: dict[str, Any] | None = ..., **kwargs
|
|
) -> Text: ...
|
|
def set_major_formatter(
|
|
self, formatter: Formatter | str | Callable[[float, float], str]
|
|
) -> None: ...
|
|
def set_minor_formatter(
|
|
self, formatter: Formatter | str | Callable[[float, float], str]
|
|
) -> None: ...
|
|
def set_major_locator(self, locator: Locator) -> None: ...
|
|
def set_minor_locator(self, locator: Locator) -> None: ...
|
|
def set_pickradius(self, pickradius: float) -> None: ...
|
|
def set_ticklabels(
|
|
self,
|
|
labels: Iterable[str | Text],
|
|
*,
|
|
minor: bool = ...,
|
|
fontdict: dict[str, Any] | None = ...,
|
|
**kwargs
|
|
) -> list[Text]: ...
|
|
def set_ticks(
|
|
self,
|
|
ticks: ArrayLike,
|
|
labels: Iterable[str] | None = ...,
|
|
*,
|
|
minor: bool = ...,
|
|
**kwargs
|
|
) -> list[Tick]: ...
|
|
def axis_date(self, tz: str | datetime.tzinfo | None = ...) -> None: ...
|
|
def get_tick_space(self) -> int: ...
|
|
def get_label_position(self) -> Literal["top", "bottom"]: ...
|
|
def set_label_position(
|
|
self, position: Literal["top", "bottom", "left", "right"]
|
|
) -> None: ...
|
|
def get_minpos(self) -> float: ...
|
|
|
|
class XAxis(Axis):
|
|
__name__: str
|
|
axis_name: str
|
|
def __init__(self, *args, **kwargs) -> None: ...
|
|
label_position: Literal["bottom", "top"]
|
|
stale: bool
|
|
def set_label_position(self, position: Literal["bottom", "top"]) -> None: ... # type: ignore[override]
|
|
def set_ticks_position(
|
|
self, position: Literal["top", "bottom", "both", "default", "none"]
|
|
) -> None: ...
|
|
def tick_top(self) -> None: ...
|
|
def tick_bottom(self) -> None: ...
|
|
def get_ticks_position(self) -> Literal["top", "bottom", "default", "unknown"]: ...
|
|
def get_tick_space(self) -> int: ...
|
|
|
|
class YAxis(Axis):
|
|
__name__: str
|
|
axis_name: str
|
|
def __init__(self, *args, **kwargs) -> None: ...
|
|
label_position: Literal["left", "right"]
|
|
stale: bool
|
|
def set_label_position(self, position: Literal["left", "right"]) -> None: ... # type: ignore[override]
|
|
def set_offset_position(self, position: Literal["left", "right"]) -> None: ...
|
|
def set_ticks_position(
|
|
self, position: Literal["left", "right", "both", "default", "none"]
|
|
) -> None: ...
|
|
def tick_right(self) -> None: ...
|
|
def tick_left(self) -> None: ...
|
|
def get_ticks_position(self) -> Literal["left", "right", "default", "unknown"]: ...
|
|
def get_tick_space(self) -> int: ...
|