Whether scatter plot transitions (zoom, highlight) should be animated.
Fires before PointClicked. Set event.Cancel = true to
suppress the click entirely.
Fires before the tooltip is shown on hover. Set
event.Cancel = true to suppress the tooltip for this point.
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.
Computed cluster centroids used for radial glow effects.
Cluster members for the selected point's cluster.
Whether the cluster members list is expanded.
Cluster summary information used for the legend and color mapping.
Fires when the user clicks a cluster label or legend swatch.
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.
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.
Metadata entries for the detail panel (computed on selection).
Base opacity for data point dots (0 to 1).
When a point is hovered, non-hovered points are dimmed below this value.
Base radius (in SVG units) for each data point dot.
The cluster ID currently being edited, or null if none.
The draft label text during editing.
Enable or disable panning via click-and-drag.
Enable or disable zoom via mouse wheel.
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.
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.
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.
Currently highlighted (single-clicked) point key.
Radius used for the highlight ring on hovered or selected points.
Background grid lines for visual orientation.
Currently hovered point (null when idle).
When true, a semi-transparent loading overlay is displayed
on top of the scatter plot.
Fires when the user edits a cluster label inline.
Payload: { ClusterId, OldLabel, NewLabel }.
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.
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.
Emitted when the user clicks "Open Record" in the detail panel.
The parent should wire this to NavigationService.OpenEntityRecord().
Emitted when a point is clicked (after BeforePointClick completes
without cancellation).
Emitted when the mouse enters or leaves a data point.
Emits null on mouse-leave.
Array of 2D-projected points to render.
Each point carries its cluster assignment, label, and metadata.
Typically produced by ClusteringService.RunPipeline().
The currently selected point shown in the detail panel.
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.
Fires whenever the set of selected point IDs changes
(via user click or programmatic SelectPoints / ClearSelection).
Whether the detail panel is visible.
Whether to show the color-coded cluster legend overlay.
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.
Filtered metadata entries for the tooltip (computed on hover).
Which metadata keys to display inside the tooltip.
When empty (the default), all metadata keys are shown.
Screen-space tooltip X position.
Screen-space tooltip Y position.
Background vertical grid lines.
Cached viewBox string for template binding (avoids NG0100 on recalc).
Fires after every zoom or pan that changes the visible viewport.
Orbit angles (radians) for the interactive 3D projection. Updated by drag.
Distinct source entities present in the data (for the entity legend).
True when any point carries a Z coordinate (a 3D projection).
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).
Points in render order. In 3D, far points are drawn first so nearer points paint on top (SVG has no z-index); in 2D the original order is preserved.
Cancel editing.
Clear all selected points.
Close the detail panel.
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.
SVG markup string, or empty string if the SVG element is not yet rendered.
Get the color for a cluster by its ID, used in the detail panel.
The cluster ID.
CSS color string.
Resolve the human-readable label for a point's cluster.
The point to look up.
Cluster label string, or "Outlier" for noise points.
Get the label for a cluster by ID (used for SVG text labels on the chart).
Resolve the display color for a given point based on its cluster
assignment and the active ColorPalette.
The point to colorize.
CSS color string.
Compute the fill opacity for a data point.
Non-hovered points are dimmed when another point is hovered.
The point to evaluate.
Opacity value between 0 and 1.
Compute the SVG radius for a data point.
Selected points use the larger HighlightRadius; all others use DotRadius.
The point to size.
Radius in SVG units.
Returns the current SVG viewBox as a space-separated string.
e.g. "0 0 1000 700"
Get the current viewport transform for saving/restoring.
Return all points currently visible within the viewport bounds.
Array of ClusterPoint objects whose X/Y fall inside the
current viewBox.
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.
The numeric cluster ID to emphasize.
Whether the given point is the currently highlighted (last-clicked) point.
The point to check.
true if highlighted.
Whether the given point is in the current selection set.
The point to check.
true if selected.
A callback method that is invoked immediately after Angular has completed initialization of a component's view. It is invoked only once when the view is instantiated.
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.
The changed properties.
A callback method that performs custom clean-up, invoked immediately before a directive, pipe, or service instance is destroyed.
Handle a click on a cluster legend item.
The cluster that was clicked.
Select a point from the cluster members list, updating the detail panel and highlighting the point on the chart.
The cluster member point to select.
Start panning on left-mousedown.
The native mouse event.
Emit the OpenRecordRequested event for the currently selected point
(triggered by the "Open Record" button in the detail panel).
Handle click on a data point: fires BeforePointClick, toggles
selection, opens the detail panel, then fires PointClicked and
SelectionChanged.
The clicked point.
Handle mouseenter on a data point: show tooltip, fire hover events.
The hovered point.
The native mouse event (used for tooltip positioning).
Handle mouseleave on a data point: hide tooltip, emit null hover.
Handle mouse wheel events for zooming.
Fires BeforeZoom and ViewportChanged. Respects EnableZoom,
MinZoom, and MaxZoom constraints.
The native wheel event.
Project a point's (X,Y,Z) to a screen X in the SVG coordinate space.
Project a point's (X,Y,Z) to a screen Y in the SVG coordinate space.
Reset the 3D orbit to the default viewing angle.
Start inline editing for a cluster label.
Toggle the cluster members list expansion state.
InternalTrackBy function for centroid loops.
InternalTrackBy function for cluster loops.
InternalTrackBy function for cluster member loops.
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.
The numeric ID of the cluster to zoom into.
Fires after new
PointsandClustersare received and centroids have been computed, delivering the full visualization result.