sy-chord
Chord
Show connection volumes between groups as ribbons inside a circle.
sy-chord
Compare relationships such as movement between regions or collaboration between departments.
Many connections cause ribbon overlap. Focus on key relationships or use a Network Graph alongside it.
Base chart tier: Pro. Features such as additional renderers and custom branding have separate entitlement requirements.
| Input | Data description |
|---|---|
data | { links: [{ source, target, value }] } or a link array. |
- Run in Components
Change options and view framework-specific code
- Shared installation and integration
Complete implementation example
<div id="chart-container" style="width: 100%; min-width: 0;"></div>
<script type="module">
import { defineCustomElement as define0 } from '@syidax/advanced-pro/components/sy-chord.js';
define0();
// Pro: complete registerLicense at app startup using your issued certificate.
// The website preview certificate is not for use in customer apps.
const specs = [
{
"id": "example-chart",
"tag": "sy-chord",
"props": {
"data": {
"links": [
{
"source": "Seoul",
"target": "Busan",
"value": 24
},
{
"source": "Busan",
"target": "Daegu",
"value": 18
},
{
"source": "Daegu",
"target": "Seoul",
"value": 30
},
{
"source": "Seoul",
"target": "Jeju",
"value": 12
},
{
"source": "Jeju",
"target": "Busan",
"value": 9
}
]
},
"nodeLabels": "show",
"width": 640,
"height": 360,
"brandPosition": "bottom-right",
"brandLogo": ""
}
}
];
const container = document.querySelector('#chart-container');
const elements = specs.map(({ tag, id, props }) => {
const element = document.createElement(tag);
element.id = id;
Object.assign(element, props);
element.setAttribute('aria-label', 'chord example chart');
return element;
});
container.replaceChildren(...elements);
const chart = elements.at(-1);
const onEvent = event => {
console.log('nodeClick', event.detail);
};
chart.addEventListener('nodeClick', onEvent);
const observer = new ResizeObserver(([entry]) => {
const width = Math.max(160, Math.floor(entry.contentRect.width));
elements.forEach(element => { element.width = width; });
});
observer.observe(container);
// In an SPA, call this function when the view is disposed.
function disposeChart() {
observer.disconnect();
chart.removeEventListener('nodeClick', onEvent);
container.replaceChildren();
}
</script>Properties
data
{ links: [{ source, target, value }] } or a link array.
| Item | Value |
|---|---|
| JavaScript property | data |
| HTML attribute | Pass objects, arrays, and callbacks as JavaScript properties |
| Type | ChordData |
| Default | undefined |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
- ChordData
Type definition
width
Chart width in pixels. If the container width changes, update width from a ResizeObserver.
| Item | Value |
|---|---|
| JavaScript property | width |
| HTML attribute | width |
| Type | number |
| Default | 900 |
height
Chart height in pixels. Allow space for axes, titles, and the legend.
| Item | Value |
|---|---|
| JavaScript property | height |
| HTML attribute | height |
| Type | number |
| Default | 400 |
brandLogo
The default is the Syidax symbol and wordmark. With the Pro chart.branding entitlement, set none to remove it or provide a PNG, JPEG, or WebP data URL to replace it.
| Item | Value |
|---|---|
| JavaScript property | brandLogo |
| HTML attribute | brand-logo |
| Type | string |
| Default | undefined |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
brandPosition
The corner where the logo is anchored. Community and Pro both support all four corners, using the same position on screen and in image exports.
| Item | Value |
|---|---|
| JavaScript property | brandPosition |
| HTML attribute | brand-position |
| Type | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' |
| Default | 'bottom-right' |
| Allowed values | top-left, top-right, bottom-left, bottom-right |
nodeWidth
The perimeter band's thickness in CSS px.
| Item | Value |
|---|---|
| JavaScript property | nodeWidth |
| HTML attribute | node-width |
| Type | number |
| Default | CHORD_DEFAULT_NODE_WIDTH |
padAngle
The gap between perimeter groups, in degrees.
| Item | Value |
|---|---|
| JavaScript property | padAngle |
| HTML attribute | pad-angle |
| Type | number |
| Default | CHORD_DEFAULT_PAD_ANGLE |
startAngle
Clockwise start angle in degrees from the positive x axis; -90 starts at the top.
| Item | Value |
|---|---|
| JavaScript property | startAngle |
| HTML attribute | start-angle |
| Type | number |
| Default | CHORD_DEFAULT_START_ANGLE |
color
The nodes' fill: auto (the palette by index) or a CSS colour; a node's own color wins.
| Item | Value |
|---|---|
| JavaScript property | color |
| HTML attribute | color |
| Type | string |
| Default | AUTO_COLOR |
linkColor
The links' colour: source / target (the node's colour at that end) or a CSS colour; a link's own color wins.
| Item | Value |
|---|---|
| JavaScript property | linkColor |
| HTML attribute | link-color |
| Type | string |
| Default | 'source' |
linkOpacity
The ribbons' opacity (0 … 1).
| Item | Value |
|---|---|
| JavaScript property | linkOpacity |
| HTML attribute | link-opacity |
| Type | number |
| Default | DEFAULT_LINK_OPACITY |
linkCurvature
The ribbon bend: 0 straight between ports, 1 pulled through the circle interior.
| Item | Value |
|---|---|
| JavaScript property | linkCurvature |
| HTML attribute | link-curvature |
| Type | number |
| Default | CHORD_DEFAULT_CURVATURE |
nodeLabels
the node labels beside the nodes: auto (hidden where they would overlap), show, hide; node-label-value appends the throughput.
| Item | Value |
|---|---|
| JavaScript property | nodeLabels |
| HTML attribute | node-labels |
| Type | ChordLabelMode |
| Default | 'auto' |
| Allowed values | auto, show, hide |
- ChordLabelMode
Type definition
nodeLabelValue
Set as an HTML attribute or JavaScript property. type: boolean.
| Item | Value |
|---|---|
| JavaScript property | nodeLabelValue |
| HTML attribute | node-label-value |
| Type | boolean |
| Default | false |
neighbourDim
with a hovered / focused node, the ribbons touching neither of its ends fade to this alpha factor (0 … 1; 1 = no dim).
| Item | Value |
|---|---|
| JavaScript property | neighbourDim |
| HTML attribute | neighbour-dim |
| Type | number |
| Default | DEFAULT_NEIGHBOUR_DIM |
activeColor
The hovered / focused node or link.
| Item | Value |
|---|---|
| JavaScript property | activeColor |
| HTML attribute | active-color |
| Type | string |
| Default | DEFAULT_ACTIVE_COLOR |
chartTitle
The title inside the chart. Explain the data's unit and meaning alongside it.
| Item | Value |
|---|---|
| JavaScript property | chartTitle |
| HTML attribute | chart-title |
| Type | string |
| Default | undefined |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
chartSubtitle
The subtitle inside the chart.
| Item | Value |
|---|---|
| JavaScript property | chartSubtitle |
| HTML attribute | chart-subtitle |
| Type | string |
| Default | undefined |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
enableMouseTracking
Set as an HTML attribute or JavaScript property. type: boolean.
| Item | Value |
|---|---|
| JavaScript property | enableMouseTracking |
| HTML attribute | enable-mouse-tracking |
| Type | boolean |
| Default | true |
tooltip
The tooltip (the shared cartesian tooltip input: trigger, format, html, connector …), its switch, a formatter of the default text.
| Item | Value |
|---|---|
| JavaScript property | tooltip |
| HTML attribute | Pass objects, arrays, and callbacks as JavaScript properties |
| Type | CartesianTooltipInput |
| Default | undefined |
| Literals in the type | auto, off |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
- CartesianTooltipInput
Type definition
tooltipEnabled
Set as an HTML attribute or JavaScript property. type: boolean.
| Item | Value |
|---|---|
| JavaScript property | tooltipEnabled |
| HTML attribute | tooltip-show |
| Type | boolean |
| Default | true |
tooltipFormat
Pass as a JavaScript property. type: (detail: ChordHitDetail) => string.
| Item | Value |
|---|---|
| JavaScript property | tooltipFormat |
| HTML attribute | Pass objects, arrays, and callbacks as JavaScript properties |
| Type | (detail: ChordHitDetail) => string |
| Default | undefined |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
- ChordHitDetail
Type definition
animated
Whether to animate initial display and data changes.
| Item | Value |
|---|---|
| JavaScript property | animated |
| HTML attribute | animate |
| Type | boolean |
| Default | false |
animationDuration
Animation duration in milliseconds.
| Item | Value |
|---|---|
| JavaScript property | animationDuration |
| HTML attribute | animation-duration |
| Type | number |
| Default | 600 |
animationEasing
Allowed values: linear, ease-out, ease-in, ease-in-out. Default: 'ease-out'.
| Item | Value |
|---|---|
| JavaScript property | animationEasing |
| HTML attribute | animation-easing |
| Type | ChordEasing |
| Default | 'ease-out' |
| Allowed values | linear, ease-out, ease-in, ease-in-out |
- ChordEasing
Type definition
animationType
Allowed values: initial, update. Default: undefined.
| Item | Value |
|---|---|
| JavaScript property | animationType |
| HTML attribute | animation-type |
| Type | ChordAnimationType |
| Default | undefined |
| Allowed values | initial, update |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
- ChordAnimationType
Type definition
streamSource
§3.6: an external stream source (link upserts); without one the chart keeps its own on the first push.
| Item | Value |
|---|---|
| JavaScript property | streamSource |
| HTML attribute | Pass objects, arrays, and callbacks as JavaScript properties |
| Type | ChordStreamSource |
| Default | undefined |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
- ChordStreamSource
Type definition
streamMax
Links tracked by the internal stream at most (the oldest leave as windowSlid).
| Item | Value |
|---|---|
| JavaScript property | streamMax |
| HTML attribute | stream-max |
| Type | number |
| Default | undefined |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
streamWindow
The newest N streamed links the chart renders (the whole buffer when unset).
| Item | Value |
|---|---|
| JavaScript property | streamWindow |
| HTML attribute | stream-window |
| Type | number |
| Default | undefined |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
zoom
Zoom: 'x' | 'y' | 'xy' | true (x) enable the drag rectangle, the pan, the wheel, the pinch and the keyboard over the diagram's unit extents (x 0 → 1 left → right, y 0 → 1 bottom → top — the hidden frame's extents); an object refines mode / drag / keyboard / minRangePx / resetButton / pan / wheel / pinch / inside. Off by default. zoomTo / zoomBy / panBy / resetZoom work regardless of the gesture switches.
| Item | Value |
|---|---|
| JavaScript property | zoom |
| HTML attribute | Pass objects, arrays, and callbacks as JavaScript properties |
| Type | CartesianZoomInput |
| Default | undefined |
| Literals in the type | auto, off, true, false, x, y, xy, inside |
undefined means this property was not explicitly set. The effective value may depend on the chart type and other settings.
- CartesianZoomInput
Type definition
engine
Renderer selection: auto, standard, or pro. Engine selection is separate from permission to use a Pro chart type.
| Item | Value |
|---|---|
| JavaScript property | engine |
| HTML attribute | engine |
| Type | ChordEngineMode |
| Default | 'auto' |
| Allowed values | auto, standard, pro |
- ChordEngineMode
Type definition
Events
rendered
Emits rendering results in detail when chart drawing completes.
Event name: rendered. Names are case-sensitive. Read the payload from detail on CustomEvent<ChordRenderResult & { tier: ChordEngineTier }>.
chart.addEventListener('rendered', event => {
console.log(event.detail); // ChordRenderResult & { tier: ChordEngineTier }
});- ChordRenderResult
Type definition
- ChordEngineTier
Type definition
nodeClick
CustomEvent.detail type: ChordNodeEventDetail. Event names are case-sensitive.
Event name: nodeClick. Names are case-sensitive. Read the payload from detail on CustomEvent<ChordNodeEventDetail>.
chart.addEventListener('nodeClick', event => {
console.log(event.detail); // ChordNodeEventDetail
});- ChordNodeEventDetail
Type definition
nodeHover
CustomEvent.detail type: ChordNodeEventDetail | null. Event names are case-sensitive.
Event name: nodeHover. Names are case-sensitive. Read the payload from detail on CustomEvent<ChordNodeEventDetail | null>.
chart.addEventListener('nodeHover', event => {
console.log(event.detail); // ChordNodeEventDetail | null
});- ChordNodeEventDetail
Type definition
linkClick
CustomEvent.detail type: ChordLinkEventDetail. Event names are case-sensitive.
Event name: linkClick. Names are case-sensitive. Read the payload from detail on CustomEvent<ChordLinkEventDetail>.
chart.addEventListener('linkClick', event => {
console.log(event.detail); // ChordLinkEventDetail
});- ChordLinkEventDetail
Type definition
linkHover
CustomEvent.detail type: ChordLinkEventDetail | null. Event names are case-sensitive.
Event name: linkHover. Names are case-sensitive. Read the payload from detail on CustomEvent<ChordLinkEventDetail | null>.
chart.addEventListener('linkHover', event => {
console.log(event.detail); // ChordLinkEventDetail | null
});- ChordLinkEventDetail
Type definition
selectionChanged
the selection (the pinned highlight) changed: a node or a link (never both) or nothing, and what changed it.
Event name: selectionChanged. Names are case-sensitive. Read the payload from detail on CustomEvent<ChordSelectionChangeEventDetail>.
chart.addEventListener('selectionChanged', event => {
console.log(event.detail); // ChordSelectionChangeEventDetail
});- ChordSelectionChangeEventDetail
Type definition
pointContextMenu
CustomEvent.detail type: ChartPointContextMenuEventDetail<ChordHitDetail>. Event names are case-sensitive.
Event name: pointContextMenu. Names are case-sensitive. Read the payload from detail on CustomEvent<ChartPointContextMenuEventDetail<ChordHitDetail>>.
chart.addEventListener('pointContextMenu', event => {
console.log(event.detail); // ChartPointContextMenuEventDetail<ChordHitDetail>
});- ChartPointContextMenuEventDetail
Type definition
- ChordHitDetail
Type definition
appended
CustomEvent.detail type: { count: number; replaced: number }. Event names are case-sensitive.
Event name: appended. Names are case-sensitive. Read the payload from detail on CustomEvent<{ count: number; replaced: number }>.
chart.addEventListener('appended', event => {
console.log(event.detail); // { count: number; replaced: number }
});windowSlid
CustomEvent.detail type: { dropped: number }. Event names are case-sensitive.
Event name: windowSlid. Names are case-sensitive. Read the payload from detail on CustomEvent<{ dropped: number }>.
chart.addEventListener('windowSlid', event => {
console.log(event.detail); // { dropped: number }
});tooltipShow
The shared tooltip events (the controller emits them).
Event name: tooltipShow. Names are case-sensitive. Read the payload from detail on CustomEvent<CartesianTooltipEventDetail>.
chart.addEventListener('tooltipShow', event => {
console.log(event.detail); // CartesianTooltipEventDetail
});- CartesianTooltipEventDetail
Type definition
tooltipHide
CustomEvent.detail type: void. Event names are case-sensitive.
Event name: tooltipHide. Names are case-sensitive. Read the payload from detail on CustomEvent<void>.
chart.addEventListener('tooltipHide', event => {
console.log(event.detail); // void
});tooltipAction
CustomEvent.detail type: CartesianTooltipActionEventDetail. Event names are case-sensitive.
Event name: tooltipAction. Names are case-sensitive. Read the payload from detail on CustomEvent<CartesianTooltipActionEventDetail>.
chart.addEventListener('tooltipAction', event => {
console.log(event.detail); // CartesianTooltipActionEventDetail
});- CartesianTooltipActionEventDetail
Type definition
chartAnimationStart
CustomEvent.detail type: void. Event names are case-sensitive.
Event name: chartAnimationStart. Names are case-sensitive. Read the payload from detail on CustomEvent<void>.
chart.addEventListener('chartAnimationStart', event => {
console.log(event.detail); // void
});chartAnimationEnd
CustomEvent.detail type: void. Event names are case-sensitive.
Event name: chartAnimationEnd. Names are case-sensitive. Read the payload from detail on CustomEvent<void>.
chart.addEventListener('chartAnimationEnd', event => {
console.log(event.detail); // void
});chartAnimationInterrupted
CustomEvent.detail type: void. Event names are case-sensitive.
Event name: chartAnimationInterrupted. Names are case-sensitive. Read the payload from detail on CustomEvent<void>.
chart.addEventListener('chartAnimationInterrupted', event => {
console.log(event.detail); // void
});zoomChange
Fired after every zoom change (drag / pan / wheel / pinch / keyboard / api / reset) with the new state.
Event name: zoomChange. Names are case-sensitive. Read the payload from detail on CustomEvent<CartesianZoomChangeEventDetail>.
chart.addEventListener('zoomChange', event => {
console.log(event.detail); // CartesianZoomChangeEventDetail
});- CartesianZoomChangeEventDetail
Type definition
Methods
redraw
Redraw the chart using its current data and options. Inspect the rendered result after the returned Promise resolves.
redraw(): Promise<ChordRenderResult>Return type: Promise<ChordRenderResult>. Call the method after element registration and await its Promise result.
- ChordRenderResult
Type definition
getActiveTier
An asynchronous method. Check the argument and return types below.
getActiveTier(): Promise<ChordEngineTier>Return type: Promise<ChordEngineTier>. Call the method after element registration and await its Promise result.
- ChordEngineTier
Type definition
setData
Replace the bar set.
setData(data: ChordData): Promise<void>| Arguments | Type | Required |
|---|---|---|
data | ChordData | Required |
Return type: Promise<void>. Call the method after element registration and await its Promise result.
- ChordData
Type definition
appendPoint
Append one value to the stream. Check the argument type and the licensing requirements for streaming.
appendPoint(link: ChordLinkInput): Promise<void>| Arguments | Type | Required |
|---|---|---|
link | ChordLinkInput | Required |
Return type: Promise<void>. Call the method after element registration and await its Promise result.
- ChordLinkInput
Type definition
appendBatch
Append multiple values to the stream. Check the argument type and the licensing requirements for streaming.
appendBatch(links: ReadonlyArray<ChordLinkInput>): Promise<void>| Arguments | Type | Required |
|---|---|---|
links | ReadonlyArray<ChordLinkInput> | Required |
Return type: Promise<void>. Call the method after element registration and await its Promise result.
- ChordLinkInput
Type definition
shift
Drop the oldest streamed links (the data links are not the stream).
shift(count: number): Promise<void>| Arguments | Type | Required |
|---|---|---|
count | number | Required |
Return type: Promise<void>. Call the method after element registration and await its Promise result.
replace
Swap the streamed set (replace([]) clears it); the base values never leave. Without chart.streaming the dies upsert into the base like a batch (quietly: no appended, no binChanged, as a ring replace).
replace(links: ReadonlyArray<ChordLinkInput>): Promise<void>| Arguments | Type | Required |
|---|---|---|
links | ReadonlyArray<ChordLinkInput> | Required |
Return type: Promise<void>. Call the method after element registration and await its Promise result.
- ChordLinkInput
Type definition
getStreamSource
The stream session's source (Chart Pro): like the stream methods it waits for a license still being confirmed.
getStreamSource(): Promise<ChordStreamSource | undefined>Return type: Promise<ChordStreamSource | undefined>. Call the method after element registration and await its Promise result.
- ChordStreamSource
Type definition
getEngineStatus
Requested vs effective engine and why (CHART-ADD-08), with the chart.type.chord license state.
getEngineStatus(): Promise<ChartEngineStatus>Return type: Promise<ChartEngineStatus>. Call the method after element registration and await its Promise result.
- ChartEngineStatus
Type definition
setAnimation
An asynchronous method. Check the argument and return types below.
setAnimation(options: { duration?: number; easing?: ChordEasing; enabled?: boolean; type?: ChordAnimationType }): Promise<void>| Arguments | Type | Required |
|---|---|---|
options | { duration?: number; easing?: ChordEasing; enabled?: boolean; type?: ChordAnimationType } | Required |
Return type: Promise<void>. Call the method after element registration and await its Promise result.
- ChordEasing
Type definition
- ChordAnimationType
Type definition
pauseAnimation
Pause the current animation.
pauseAnimation(): Promise<void>Return type: Promise<void>. Call the method after element registration and await its Promise result.
resumeAnimation
Resume a paused animation.
resumeAnimation(): Promise<void>Return type: Promise<void>. Call the method after element registration and await its Promise result.
replayAnimation
Replay the initial sweep from min → value(s). No-op when animation is off / reduced.
replayAnimation(): Promise<void>Return type: Promise<void>. Call the method after element registration and await its Promise result.
hitTest
The node or link under a host-local CSS point (a node first, else the topmost ribbon), or null (always without a valid license).
hitTest(cssX: number, cssY: number): Promise<ChordHitDetail | null>| Arguments | Type | Required |
|---|---|---|
cssX | number | Required |
cssY | number | Required |
Return type: Promise<ChordHitDetail | null>. Call the method after element registration and await its Promise result.
- ChordHitDetail
Type definition
getNode
An asynchronous method. Check the argument and return types below.
getNode(index: number): Promise<ChordNode | null>| Arguments | Type | Required |
|---|---|---|
index | number | Required |
Return type: Promise<ChordNode | null>. Call the method after element registration and await its Promise result.
- ChordNode
Type definition
getNodeById
An asynchronous method. Check the argument and return types below.
getNodeById(id: string): Promise<ChordNode | null>| Arguments | Type | Required |
|---|---|---|
id | string | Required |
Return type: Promise<ChordNode | null>. Call the method after element registration and await its Promise result.
- ChordNode
Type definition
getNodes
An asynchronous method. Check the argument and return types below.
getNodes(): Promise<ChordNode[]>Return type: Promise<ChordNode[]>. Call the method after element registration and await its Promise result.
- ChordNode
Type definition
getLinks
An asynchronous method. Check the argument and return types below.
getLinks(): Promise<ChordLink[]>Return type: Promise<ChordLink[]>. Call the method after element registration and await its Promise result.
- ChordLink
Type definition
getNodeCount
An asynchronous method. Check the argument and return types below.
getNodeCount(): Promise<number>Return type: Promise<number>. Call the method after element registration and await its Promise result.
getLinkCount
An asynchronous method. Check the argument and return types below.
getLinkCount(): Promise<number>Return type: Promise<number>. Call the method after element registration and await its Promise result.
getExtent
An asynchronous method. Check the argument and return types below.
getExtent(): Promise<ChordExtent>Return type: Promise<ChordExtent>. Call the method after element registration and await its Promise result.
- ChordExtent
Type definition
getLayoutStats
Settled perimeter geometry and directed relationship totals.
getLayoutStats(): Promise<{ nodes: number; links: number; total: number; dropped: number; radius: number; nodeWidth: number; padAngle: number; curvature: number }>Return type: Promise<{ nodes: number; links: number; total: number; dropped: number; radius: number; nodeWidth: number; padAngle: number; curvature: number }>. Call the method after element registration and await its Promise result.
getLabels
the placed node labels in HOST-local CSS px as shown (the plot offset added; under a zoom the labels of the nodes outside the window are left out), shown or hidden with the reason.
getLabels(): Promise<ChordNodeLabel[]>Return type: Promise<ChordNodeLabel[]>. Call the method after element registration and await its Promise result.
- ChordNodeLabel
Type definition
getLayout
Host-local geometry as shown. Scale fields preserve ellipses under non-uniform viewport zoom.
getLayout(): Promise<ChordLayoutResult>Return type: Promise<ChordLayoutResult>. Call the method after element registration and await its Promise result.
- ChordLayoutResult
Type definition
showTooltipAtIndex
Open a tooltip by point index: perimeter nodes first, then ribbons.
showTooltipAtIndex(index: number): Promise<CartesianTooltipEventDetail | null>| Arguments | Type | Required |
|---|---|---|
index | number | Required |
Return type: Promise<CartesianTooltipEventDetail | null>. Call the method after element registration and await its Promise result.
- CartesianTooltipEventDetail
Type definition
hideTooltip
Close the currently visible tooltip.
hideTooltip(): Promise<void>Return type: Promise<void>. Call the method after element registration and await its Promise result.
focusNodeAt
Move the keyboard focus ring to a node (null off the nodes); emits nodeHover like the walk.
focusNodeAt(index: number): Promise<ChordNodeEventDetail | null>| Arguments | Type | Required |
|---|---|---|
index | number | Required |
Return type: Promise<ChordNodeEventDetail | null>. Call the method after element registration and await its Promise result.
- ChordNodeEventDetail
Type definition
selectNodeAt
Select (pin) a node: its neighbourhood stays highlighted after the pointer leaves; a negative or unknown index releases the selection. Emits selectionChanged when it changes.
selectNodeAt(index: number): Promise<ChordNodeEventDetail | null>| Arguments | Type | Required |
|---|---|---|
index | number | Required |
Return type: Promise<ChordNodeEventDetail | null>. Call the method after element registration and await its Promise result.
- ChordNodeEventDetail
Type definition
selectLinkAt
Select (pin) a link: its ribbon keeps the accent after the pointer leaves; a negative or unknown index releases the selection.
selectLinkAt(index: number): Promise<ChordLinkEventDetail | null>| Arguments | Type | Required |
|---|---|---|
index | number | Required |
Return type: Promise<ChordLinkEventDetail | null>. Call the method after element registration and await its Promise result.
- ChordLinkEventDetail
Type definition
clearSelection
Release the selection (emits selectionChanged when there was one).
clearSelection(): Promise<void>Return type: Promise<void>. Call the method after element registration and await its Promise result.
getSelection
The selection: the selected node's / link's detail (null = none); its anchors are Pro-derived, refused without a valid license.
getSelection(): Promise<ChordSelection>Return type: Promise<ChordSelection>. Call the method after element registration and await its Promise result.
- ChordSelection
Type definition
zoomTo
Zoom to explicit windows over the unit extents: x / y as { min, max } or [min, max] (null clears that orientation).
zoomTo(request: CartesianZoomRequest): Promise<CartesianZoomChangeEventDetail | null>| Arguments | Type | Required |
|---|---|---|
request | CartesianZoomRequest | Required |
Return type: Promise<CartesianZoomChangeEventDetail | null>. Call the method after element registration and await its Promise result.
- CartesianZoomChangeEventDetail
Type definition
- CartesianZoomRequest
Type definition
zoomBy
Scale the current windows by factor (< 1 zooms in) around anchorFraction (0..1, default centre).
zoomBy(factor: number, anchorFraction?: number): Promise<CartesianZoomChangeEventDetail | null>| Arguments | Type | Required |
|---|---|---|
factor | number | Required |
anchorFraction | number | Optional |
Return type: Promise<CartesianZoomChangeEventDetail | null>. Call the method after element registration and await its Promise result.
- CartesianZoomChangeEventDetail
Type definition
panBy
Slide the zoomed windows by unit-extent units ({ x?, y? }); a no-op at the full extent.
panBy(delta: { x?: number; y?: number }): Promise<CartesianZoomChangeEventDetail | null>| Arguments | Type | Required |
|---|---|---|
delta | { x?: number; y?: number } | Required |
Return type: Promise<CartesianZoomChangeEventDetail | null>. Call the method after element registration and await its Promise result.
- CartesianZoomChangeEventDetail
Type definition
resetZoom
Reset the zoomed or panned range to the original data range.
resetZoom(): Promise<CartesianZoomChangeEventDetail | null>Return type: Promise<CartesianZoomChangeEventDetail | null>. Call the method after element registration and await its Promise result.
- CartesianZoomChangeEventDetail
Type definition
getZoom
Read the current zoom range. Check the return type's nullability and the range for each axis.
getZoom(): Promise<CartesianZoomState | null>Return type: Promise<CartesianZoomState | null>. Call the method after element registration and await its Promise result.
- CartesianZoomState
Type definition
getZoomExtent
The full extent (0 … 1) and key of the diagram's orientations (null before the first layout).
getZoomExtent(request?: CartesianZoomExtentRequest): Promise<CartesianZoomExtentDetail | null>| Arguments | Type | Required |
|---|---|---|
request | CartesianZoomExtentRequest | Optional |
Return type: Promise<CartesianZoomExtentDetail | null>. Call the method after element registration and await its Promise result.
- CartesianZoomExtentDetail
Type definition
- CartesianZoomExtentRequest
Type definition