cobtools.plot_utils package
Submodules
cobtools.plot_utils.cmd module
cmd.py
This module provides tools for creating Color-Magnitude Diagrams (CMDs) using matplotlib. It includes a customised matplotlib Axes class that has a predefined background image and metadata.
Functions: - _load_background_image: Load the Gaia CMD background image. - _load_background_metadata: Load metadata for the Gaia CMD background.
Classes: - GaiaCMDAxis: A custom matplotlib Axes for Gaia CMDs.
- class cobtools.plot_utils.cmd.GaiaCMDAxis(fig, rect=None, **kwargs)[source]
Bases:
AxesA matplotlib.pyplot.Axes object that displays a Gaia CMD background. Inherits from matplotlib.pyplot.Axes.
Example
import matplotlib.pyplot as plt from cobtools.plot_utils.cmd import GaiaCMDAxis # This creates a Gaia CMD plot with a red point at (0.5, -4.0) fig = plt.figure() ax = GaiaCMDAxis(fig) ax.plot(0.5, -4.0, "ro") plt.show() # To use a more publication-ready style, use the style_context method: with GaiaCMDAxis.style_context(): fig = plt.figure() ax = GaiaCMDAxis(fig) ax.plot(0.5, -4.0, "ro") plt.show()
- set(*, adjustable=<UNSET>, agg_filter=<UNSET>, alpha=<UNSET>, anchor=<UNSET>, animated=<UNSET>, aspect=<UNSET>, autoscale_on=<UNSET>, autoscalex_on=<UNSET>, autoscaley_on=<UNSET>, axes_locator=<UNSET>, axisbelow=<UNSET>, box_aspect=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, facecolor=<UNSET>, forward_navigation_events=<UNSET>, frame_on=<UNSET>, gid=<UNSET>, in_layout=<UNSET>, label=<UNSET>, mouseover=<UNSET>, navigate=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, position=<UNSET>, prop_cycle=<UNSET>, rasterization_zorder=<UNSET>, rasterized=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, subplotspec=<UNSET>, title=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, xbound=<UNSET>, xlabel=<UNSET>, xlim=<UNSET>, xmargin=<UNSET>, xscale=<UNSET>, xticklabels=<UNSET>, xticks=<UNSET>, ybound=<UNSET>, ylabel=<UNSET>, ylim=<UNSET>, ymargin=<UNSET>, yscale=<UNSET>, yticklabels=<UNSET>, yticks=<UNSET>, zorder=<UNSET>)
Set multiple properties at once.
Supported properties are
- Properties:
adjustable: {‘box’, ‘datalim’} agg_filter: a filter function, which takes a (m, n, 3) float array and a dpi value, and returns a (m, n, 3) array and two offsets from the bottom left corner of the image alpha: float or None anchor: (float, float) or {‘C’, ‘SW’, ‘S’, ‘SE’, ‘E’, ‘NE’, …} animated: bool aspect: {‘auto’, ‘equal’} or float autoscale_on: bool autoscalex_on: unknown autoscaley_on: unknown axes_locator: Callable[[Axes, Renderer], Bbox] axisbelow: bool or ‘line’ box_aspect: float or None clip_box: ~matplotlib.transforms.BboxBase or None clip_on: bool clip_path: Patch or (Path, Transform) or None facecolor or fc: color figure: ~matplotlib.figure.Figure or ~matplotlib.figure.SubFigure forward_navigation_events: bool or “auto” frame_on: bool gid: str in_layout: bool label: object mouseover: bool navigate: bool navigate_mode: unknown path_effects: list of .AbstractPathEffect picker: None or bool or float or callable position: [left, bottom, width, height] or ~matplotlib.transforms.Bbox prop_cycle: ~cycler.Cycler rasterization_zorder: float or None rasterized: bool sketch_params: (scale: float, length: float, randomness: float) snap: bool or None subplotspec: unknown title: str transform: ~matplotlib.transforms.Transform url: str visible: bool xbound: (lower: float, upper: float) xlabel: str xlim: (left: float, right: float) xmargin: float greater than -0.5 xscale: unknown xticklabels: unknown xticks: unknown ybound: (lower: float, upper: float) ylabel: str ylim: (bottom: float, top: float) ymargin: float greater than -0.5 yscale: unknown yticklabels: unknown yticks: unknown zorder: float
cobtools.plot_utils.ecdf module
- cobtools.plot_utils.ecdf.get_ecdf(data: _Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], normalised: bool = True) Tuple[ndarray, ndarray][source]
Compute the empirical cumulative distribution function (ECDF) for 1D data.
- Parameters:
data (ArrayLike) – One-dimensional array-like sequence of sample values from which to compute the ECDF.
normalised (bool, optional) – If True (default), the ECDF y-values are normalised to the range [0, 1]. If False, y-values are raw counts.
- Returns:
x (numpy.ndarray) – Sorted data values prepared for step plotting. The smallest value is duplicated at the start so that the first ECDF step begins at the minimum x-value.
y (numpy.ndarray) – ECDF values corresponding to
x. Ifnormalisedis True,yranges from 0 to 1; otherwise, it contains cumulative counts from 0 up tolen(data).
- Raises:
ValueError – If the input array is empty or not one-dimensional.
Module contents
Package for plotting utilities in cobtools.