MAIDR Documentation - v3.65.0
    Preparing search index...

    Interface representing a trace with navigation and observation capabilities

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    observers: Observer<TraceState>[]
    isWarning: boolean
    id: string
    type: TraceType
    title: string
    xAxis: string
    yAxis: string
    z: string
    navigationService: NavigationService
    layer: MaidrLayer
    supportsExtrema: true

    Abstract property that subclasses must implement to indicate extrema support

    movable: Movable
    highlightValues: SVGElement[][] | null
    highlightCenters:
        | {
            x: number;
            y: number;
            row: number;
            col: number;
            element: SVGElement;
        }[]
        | null

    Accessors

    • get isInitialEntry(): boolean

      Returns boolean

    • set isInitialEntry(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get isOutOfBounds(): boolean

      Returns boolean

    • set isOutOfBounds(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get row(): number

      Returns number

    • set row(value: number): void

      Parameters

      • value: number

      Returns void

    • get col(): number

      Returns number

    • set col(value: number): void

      Parameters

      • value: number

      Returns void

    • get state(): TraceState

      Gets the current state of the trace including audio, braille, text, and highlight information.

      Returns TraceState

      The current TraceState

    • get hasMultiPoints(): boolean

      Returns boolean

    • get values(): number[][]

      Returns number[][]

    Methods

    • Gets safe row and column indices to prevent accessing undefined values

      Returns { row: number; col: number }

      Object with safe row and column indices

    • Parameters

      • a: number

        Utility function to compare point values for rotor functionality

      • b: number
      • type: "lower" | "higher"

      Returns boolean

      boolean value

    • Moves left in rotor mode, optionally filtering by lower or higher values.

      Parameters

      • Optional_mode: "lower" | "higher"

        Optional mode for filtering (lower or higher)

      Returns boolean

      Error always - subclasses must override this method

    • Moves right in rotor mode, optionally filtering by lower or higher values.

      Parameters

      • Optional_mode: "lower" | "higher"

        Optional mode for filtering (lower or higher)

      Returns boolean

      Error always - subclasses must override this method

    • Returns true if this trace supports compare (lower/higher value) navigation. Override to false for trace types that don't use compare modes (e.g., scatter, which is all we currently have).

      Returns boolean

    • Returns the display name for the default data navigation mode. Override to provide a trace-specific name (e.g., "ROW AND COLUMN NAVIGATION" for scatter).

      Returns string

    • Get all highlight SVG elements for this trace Used by HighlightService for high contrast mode

      Returns SVGElement[]

      Array of all SVG elements, or empty array if none

    • Get all original (visible) SVG elements for this trace. These are the actual rendered elements, not the hidden clones used for highlighting. Used by HighlightService for high contrast mode color changes.

      Returns SVGElement[]

      Array of all original SVG elements, or empty array if none

    • Returns true if this trace supports intersection navigation mode. Opt-in per trace type: override to return true (possibly conditionally, e.g. based on data shape) for trace types that expose point intersections between series. Intersection navigation is a trace-level capability — it has no meaning at the figure or subplot level, which is why it lives on AbstractTrace rather than AbstractPlot.

      Returns boolean

    • Moves to the nearest point at the specified coordinates (used for hover functionality).

      Parameters

      • x: number

        The x-coordinate

      • y: number

        The y-coordinate

      Returns void

    • Checks if the specified coordinates are within bounds of the element.

      Parameters

      • x: number

        The x-coordinate

      • y: number

        The y-coordinate

      • element: NearestPoint

        Object containing the SVG element and its position

        • element: SVGElement
        • row: number
        • col: number

      Returns boolean

      True if the point is in bounds, false otherwise

    • Moves to the next cell matching the comparison criteria in the specified direction

      Parameters

      • direction: "left" | "right" | "up" | "down"

        Direction to search (left, right, up, or down)

      • type: "lower" | "higher"

        Comparison type (lower or higher than current value)

      Returns boolean

      True if a matching cell was found and moved to

    • Searches for a matching value in the current row

      Parameters

      • direction: "left" | "right"

        Search direction (left or right)

      • type: "lower" | "higher"

        Comparison type (lower or higher)

      Returns boolean

      True if a matching value was found

    • Searches for a matching value in the current column

      Parameters

      • direction: "up" | "down"

        Search direction (up or down)

      • type: "lower" | "higher"

        Comparison type (lower or higher)

      Returns boolean

      True if a matching value was found

    • Moves upward in rotor mode to find lower or higher values

      Parameters

      • mode: "lower" | "higher"

        Comparison mode (lower or higher)

      Returns boolean

      True if movement was successful

    • Moves downward in rotor mode to find lower or higher values

      Parameters

      • mode: "lower" | "higher"

        Comparison mode (lower or higher)

      Returns boolean

      True if movement was successful

    • Maps SVG elements to their center coordinates for click navigation

      Returns { x: number; y: number; row: number; col: number; element: SVGElement }[] | null

      Array of center coordinates with row/col indices or null

    • Finds the nearest heatmap cell to the given coordinates

      Parameters

      • x: number

        X coordinate

      • y: number

        Y coordinate

      Returns { element: SVGElement; row: number; col: number } | null

      Nearest cell information or null