API
render
Description
Render data on the chart. You can determine whether to redraw the chart or append data to the exisiting chart with append
property. You can also draw data that exceeds the maximum value of y-axis by using the drawOutOfRange
property. In this case, it will be drawn on the y-axis maximum.
Interface
render(data: ScatterDataType[], { append = false, drawOutOfRange = false } = {}) => void;
ScatterDataType
type ScatterDataType {
x: number;
y: number;
type?: string;
hidden?: boolean; // whether or not to render. If not given, it will be rendered.
}
Usage
SC.render(data);
SC.render(data, { append: true });
SC.render(data, { drawOutOfRange: true });
on
Description
Bind events and handler. We provide click
| dragEnd
| clickLegend
| resize
events.
click
Occurs when clicking in the chart area.
Interface
on('click', (event: MouseEvent, { x, y }))=> void;
Usage
SC.on('click', (event, { x, y }) => {
console.log('clicked! ', x, y);
});
dragEnd
Occurs when dragging in the chart area.
Interface
on('dragEnd', (event: MouseEvent, { x1, y1, x2, y2 }))=> void;
Usage
SC.on('dragEnd', (event, { x1, y1, x2, y2 }) => {
console.log('start ', x1, y1);
console.log('end ', x2, y2);
})
clickLegend
Occurs when clicking in the legend area.
Interface
on('clickLegend', (event: MouseEvent, { checked: string[] }))=> void;
Usage
SC.on('clickLegend', (event, { checked }) => {
console.log('checked data types: ', checked);
// checked data types: ['success', 'fail']
})
resize
Occurs when resize()
method called
Interface
on('resize', (event: string, { width: number, height: number }))=> void;
Usage
SC.on('resize', (event, { width, height }) => {
console.log('resized width: ', width);
console.log('resized height: ', height);
})
off
Description
Remove the event listener you added.
Interface
off(eventType: string) => void;
Usage
SC.off('click');
SC.off('dragEnd');
SC.off('resize');
resize
Description
Reset width and height.
Interface
resize(width?: number, height:? number) => void;
Usage
SC.resize();
SC.resize(900, 450);
setOption
Description
Reset the options.
Interface
setOption({
axis?: {
x?: Partial<AxisOption>,
y?: Partial<AxisOption>,
},
render?: RenderOption
}) => void;
Usage
SC.setOption({
axis: {
x: { min: Number(min), max: Number(max) }
},
render: {
drawOutOfRange: true,
}
});
getOption
Description
Returns the options.
Interface
getOption() => ScatterChartOption;
Usage
SC.getOption();
toBase64Image
Description
Convert canvas into base64
data URL
Interface
toBase64Image() => Promise<string>
Usage
const imageSrc = SC.toBase64Image();
startRealtime
Description
Start reatltime mode
Interface
startRealtime(duration: number) => void
Usage
SC.startRealtime(to - from);
SC.startRealtime(60000);
stopRealtime
Description
Stop reatltime mode
Interface
stopRealtime() => void
Usage
SC.stopRealtime();
clear
Description
Clear all data
Interface
clear() => void
Usage
SC.clear();
destroy
Description
Unregisters all events that have been registered and removes the rendered elements.
Interface
destroy() => void
Usage
SC.destroy();
isRealtime
Description
Getter that returns a boolean value indicating whether the current chart is in realtime mode.
Interface
(getter) ScatterChart.isRealtime: boolean
Usage
SC.isRealtime;