Member Junction
    Preparing search index...

    Implements

    • AfterViewInit
    • OnDestroy
    • OnChanges
    Index

    Constructors

    Properties

    AfterClusteringComplete: EventEmitter<ClusterVisualizationResult> = ...

    Fires after new Points and Clusters are received and centroids have been computed, delivering the full visualization result.

    AnimateTransitions: boolean = true

    Whether scatter plot transitions (zoom, highlight) should be animated.

    true
    
    BeforePointClick: EventEmitter<CancelableEvent<ClusterPoint>> = ...

    Fires before PointClicked. Set event.Cancel = true to suppress the click entirely.

    onBeforeClick(event: CancelableEvent<ClusterPoint>): void {
    if (event.Data.ClusterId === -1) {
    event.Cancel = true; // ignore outlier clicks
    }
    }
    BeforePointHover: EventEmitter<CancelableEvent<ClusterPoint>> = ...

    Fires before the tooltip is shown on hover. Set event.Cancel = true to suppress the tooltip for this point.

    BeforeZoom: EventEmitter<CancelableEvent<ViewportRect>> = ...

    Fires before a zoom or pan operation is applied. Set event.Cancel = true to reject the viewport change.

    The payload contains the proposed viewport rectangle.

    ClusterCentroids: {
        ClusterId: number;
        Color: string;
        Cx: number;
        Cy: number;
        R: number;
    }[] = []

    Computed cluster centroids used for radial glow effects.

    ClusterMembers: ClusterPoint[] = []

    Cluster members for the selected point's cluster.

    ClusterMembersExpanded: boolean = true

    Whether the cluster members list is expanded.

    Clusters: ClusterInfo[] = []

    Cluster summary information used for the legend and color mapping.

    ClusterSelected: EventEmitter<ClusterSelectedEvent> = ...

    Fires when the user clicks a cluster label or legend swatch.

    ColorBy: "cluster" | "entity" = 'cluster'

    Legend / color mode. 'cluster' (default) colors each point by its assigned cluster; 'entity' colors by the point's source entity (Metadata.EntityName), which is the useful mode for multi-entity analyses.

    ColorPalette: string[] = []

    Override the default cluster color palette.

    Colors are assigned to clusters by index: cluster 0 gets ColorPalette[0], cluster 1 gets ColorPalette[1], etc. Wraps around when there are more clusters than colors.

    CLUSTER_COLORS (10 accessible colors)
    
    DetailEntries: { Key: string; Value: unknown }[] = []

    Metadata entries for the detail panel (computed on selection).

    DotOpacity: number = 0.75

    Base opacity for data point dots (0 to 1).

    When a point is hovered, non-hovered points are dimmed below this value.

    0.75
    
    DotRadius: number = 5

    Base radius (in SVG units) for each data point dot.

    5
    
    EditingClusterId: number = null

    The cluster ID currently being edited, or null if none.

    EditingLabelDraft: string = ''

    The draft label text during editing.

    EnablePan: boolean = true

    Enable or disable panning via click-and-drag.

    true
    
    EnableZoom: boolean = true

    Enable or disable zoom via mouse wheel.

    true
    
    EntityName: string = null

    The entity name for metadata-driven field display in tooltips and detail panels. When set, the mj-entity-card component uses EntityInfo to prioritize fields by IsNameField and DefaultInView.

    FieldDisplayNames: Record<string, string> = {}

    Map of field names to human-readable display names. Used to show "First Name" instead of "FirstName" in tooltips and detail panels. If a field is not in this map, the raw key is shown.

    {} (use raw key names)
    
    FieldPriority: string[] = []

    Ordered list of metadata field keys for prioritized display in tooltips and the detail panel. When set, fields are displayed in this order instead of raw metadata key order. Fields not in this list appear after the prioritized fields.

    Typically computed from entity metadata (DefaultInView, Sequence) by the consuming component and passed in.

    [] (no prioritizationoriginal key order)
    
    HighlightedKey: string = null

    Currently highlighted (single-clicked) point key.

    HighlightRadius: number = 8

    Radius used for the highlight ring on hovered or selected points.

    8
    
    HorizontalGridLines: number[] = ...

    Background grid lines for visual orientation.

    HoveredPoint: ClusterPoint = null

    Currently hovered point (null when idle).

    IsLoading: boolean = false

    When true, a semi-transparent loading overlay is displayed on top of the scatter plot.

    LabelEdited: EventEmitter<
        { ClusterId: number; NewLabel: string; OldLabel: string },
    > = ...

    Fires when the user edits a cluster label inline. Payload: { ClusterId, OldLabel, NewLabel }.

    MaxZoom: number = 10

    Maximum zoom level (largest allowed viewBox multiplier).

    A value of 10 means the user can zoom out until the viewBox is 10x the default 1000x700 size.

    10
    
    MinZoom: number = 0.5

    Minimum zoom level (smallest allowed viewBox multiplier).

    A value of 0.5 means the user can zoom in until the viewBox is half of the default 1000x700 size.

    0.5
    
    OpenRecordRequested: EventEmitter<ClusterPoint> = ...

    Emitted when the user clicks "Open Record" in the detail panel. The parent should wire this to NavigationService.OpenEntityRecord().

    Pitch: number = 0.45
    PointClicked: EventEmitter<ClusterPoint> = ...

    Emitted when a point is clicked (after BeforePointClick completes without cancellation).

    PointHovered: EventEmitter<ClusterPoint> = ...

    Emitted when the mouse enters or leaves a data point. Emits null on mouse-leave.

    Points: ClusterPoint[] = []

    Array of 2D-projected points to render.

    Each point carries its cluster assignment, label, and metadata. Typically produced by ClusteringService.RunPipeline().

    SelectedPoint: ClusterPoint = null

    The currently selected point shown in the detail panel.

    SelectedPointIds: Set<string> = ...

    Externally controlled set of selected point IDs (by VectorKey).

    When provided, the component renders selection rings for matching points and emits SelectionChanged when the user modifies the set interactively.

    (empty Set)
    
    <mj-cluster-scatter
    [SelectedPointIds]="mySelectedIds"
    (SelectionChanged)="mySelectedIds = $event">
    </mj-cluster-scatter>
    SelectionChanged: EventEmitter<Set<string>> = ...

    Fires whenever the set of selected point IDs changes (via user click or programmatic SelectPoints / ClearSelection).

    ShowDetailPanel: boolean = false

    Whether the detail panel is visible.

    ShowLegend: boolean = true

    Whether to show the color-coded cluster legend overlay.

    true
    
    ShowTooltip: boolean = true

    Whether to show the tooltip popup on point hover.

    When false, BeforePointHover and PointHovered still fire but the built-in tooltip DOM is not rendered.

    true
    
    TooltipEntries: { Key: string; Value: unknown }[] = []

    Filtered metadata entries for the tooltip (computed on hover).

    TooltipFields: string[] = []

    Which metadata keys to display inside the tooltip.

    When empty (the default), all metadata keys are shown.

    []
    
    <mj-cluster-scatter [TooltipFields]="['EntityRecordID', 'Score']">
    </mj-cluster-scatter>
    TooltipX: number = 0

    Screen-space tooltip X position.

    TooltipY: number = 0

    Screen-space tooltip Y position.

    VerticalGridLines: number[] = ...

    Background vertical grid lines.

    ViewBoxString: string = '0 0 1000 700'

    Cached viewBox string for template binding (avoids NG0100 on recalc).

    ViewportChanged: EventEmitter<ViewportRect> = ...

    Fires after every zoom or pan that changes the visible viewport.

    Yaw: number = 0.6

    Orbit angles (radians) for the interactive 3D projection. Updated by drag.

    Accessors

    • get ProjectedClusterLabels(): {
          ClusterId: number;
          Color: string;
          X: number;
          Y: number;
      }[]

      Cluster labels positioned at each cluster's centroid in projected space. Used to label clusters in 3D (where the 2D centroid-glow path is disabled). Recomputes as the user orbits because it depends on PX/PY (yaw/pitch).

      Returns { ClusterId: number; Color: string; X: number; Y: number }[]

    Methods

    • Export the current scatter plot as an SVG string.

      The returned string is a self-contained <svg> element that can be saved to a file or embedded in HTML.

      Returns string

      SVG markup string, or empty string if the SVG element is not yet rendered.

    • Visually emphasize all points belonging to a cluster by increasing their radius and dimming non-members.

      Call ResetZoom() or re-assign Points to clear the highlight.

      Parameters

      • clusterId: number

        The numeric cluster ID to emphasize.

      Returns void

    • A callback method that is invoked immediately after the default change detector has checked data-bound properties if at least one has changed, and before the view and content children are checked.

      Parameters

      • changes: { [propName: string]: SimpleChange<any> }

        The changed properties.

      Returns void

    • Programmatically select points by their VectorKey IDs.

      Merges with the existing selection. Use ClearSelection() first to replace the selection entirely.

      Parameters

      • ids: string[]

        Array of VectorKey strings to select.

      Returns void

      this.scatter.SelectPoints(['abc-123', 'def-456']);
      
    • Animate the viewport to center on a specific cluster's centroid.

      The zoom level is adjusted so that all cluster members are visible with some padding.

      Parameters

      • clusterId: number

        The numeric ID of the cluster to zoom into.

      Returns void

      @ViewChild(ClusterScatterComponent) scatter!: ClusterScatterComponent;
      this.scatter.ZoomToCluster(2);