### Theme Example Properties Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/OfficialTheme Optional properties used in LightningChart JS Online Examples and projects. ```APIDOC ## Theme Example Properties ### Description Optional properties used in LightningChart JS Online Examples and projects. These are guaranteed to be included in all official Library Themes provided by LightningChart, but not required in custom Themes defined by users. ### Method N/A (Theme Properties) ### Endpoint N/A ### Parameters #### Path Parameters N/A #### Query Parameters N/A #### Request Body N/A ### Request Example ```javascript // Example, ensure official LightningChart JS theme is in use. const theme = chart.getTheme() if (!theme.examples) { throw new Error(`LightningChart JS Theme.examples is undefined. You are probably using an unofficial theme and attempting to access example theme properties!`); } ``` ### Response #### Success Response (200) N/A #### Response Example N/A ## Theme Properties - **examples** (ThemeExampleProperties) - Properties of Theme that are optional, and officially only used in LightningChart JS Online Examples and projects. ``` -------------------------------- ### Create Funnel Chart Examples Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/FunnelChartOptions Examples demonstrating how to create a Funnel Chart with different configurations. ```APIDOC ## Example Usage ```javascript // Example 1, create funnel chart with default configuration. const chart = LightningChart.Funnel({}) ``` ```javascript // Example 2, create funnel chart with labels inside slices. const chart = LightningChart.Funnel({ type: FunnelChartTypes.LabelsInsideSlices }) ``` ```javascript // Example 3, create funnel chart with specified color theme. const chart = LightningChart.Funnel({ theme: Themes.light, }) ``` ``` -------------------------------- ### Highlight Color Offset Example - Darken Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/OfficialTheme Illustrates using `highlightColorOffset` to darken highlighted components. The example provides a `ColorRGBA` value with negative values for all color channels, effectively reducing brightness. ```javascript // Example, highlighted components are darkened. highlightColorOffset: ColorRGBA(-100, -100, -100, 0) ``` -------------------------------- ### Theme Example Properties Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/Theme Optional properties primarily used in LightningChart JS online examples, providing additional customization. ```APIDOC ## Theme Example Properties ### Description Optional properties intended for use in LightningChart JS online examples and projects. These are included in official themes but not required in custom themes. ### Method N/A (Theme property) ### Endpoint N/A ### Parameters #### Path Parameters N/A #### Query Parameters N/A #### Request Body N/A ### Request Example ```javascript // Example, ensure official LightningChart JS theme is in use. const theme = chart.getTheme() if (!theme.examples) { throw new Error(`LightningChart JS Theme.examples is undefined. You are probably using an unofficial theme and attempting to access example theme properties!`); } ``` ### Response #### Success Response (200) N/A #### Response Example N/A **Properties:** - **examples** (ThemeExampleProperties, Optional, Readonly) - Properties related to theme examples. ``` -------------------------------- ### Create ChartXY with Custom Default Axes Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/ChartXYOptions Provides an example of creating a ChartXY with custom configurations for both the default X and Y axes, including axis types and bases. This enables advanced axis setups from the start. ```javascript const chart = LightningChart.ChartXY({ defaultAxisX: { type: 'linear' }, defaultAxisY: { type: 'logarithmic', base: 10 } }); ``` -------------------------------- ### Get Heatmap Start Coordinate Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/HeatmapGridSeries Gets the start coordinate (Point) of a heatmap on its X and Y axes. This defines the beginning of the heatmap data. ```javascript heatmapSeries.getStart() ``` -------------------------------- ### Pie Chart Configuration Examples Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/PieOptions Demonstrates how to configure a pie chart with default settings and with a specified type using PieChartTypes. ```javascript // Pie Chart with default type undefined // Pie Chart* with specified type { pieChartOptions: { type: PieChartTypes.PieChartWithLabelsOnSides } } ``` -------------------------------- ### Subscribe to Data Grid Touch Events (JavaScript) Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/DataGrid Demonstrates subscribing to touch events on Data Grid cells, including start, move, and end. These events are crucial for mobile and touch-enabled device interactions. ```javascript DataGrid.onCellTouchStart(cellData => console.log('Touch started on cell:', cellData)); DataGrid.onCellTouchMove(cellData => console.log('Touch moved over cell:', cellData)); DataGrid.onCellTouchEnd(cellData => console.log('Touch ended on cell:', cellData)); ``` -------------------------------- ### Get Interval Restrictions Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/PolarAxis Retrieves the current restrictions set for the axis interval. These restrictions can limit how the interval can be changed, for example, by setting minimum or maximum values for the start, end, or size of the interval. By default, no restrictions are applied. ```javascript /** * Get current value of setIntervalRestrictions. By default, no restrictions. * @returns {undefined | { endMax?: number; endMin?: number; intervalMax?: number; intervalMin?: number; startMax?: number; startMin?: number; }} Current interval restrictions. */ function getIntervalRestrictions(): undefined | { endMax?: number; endMin?: number; intervalMax?: number; intervalMin?: number; startMax?: number; startMin?: number; }; ``` -------------------------------- ### Get Heatmap Start Coordinate Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/HeatmapScrollingGridSeriesIntensityValues Retrieves the starting coordinate (Point) of a heatmap on its X and Y axes. This defines the position where the first heatmap sample will be placed. ```javascript getStart(): Point // Get start coordinate of Heatmap on its X and Y axis. ``` -------------------------------- ### PointableBackground Methods Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/PointableBackground This section details the methods available for the PointableBackground interface, including getting and setting various style properties. ```APIDOC ## GET /api/websites/lightningchart_js-charts_api-documentation_v8_1_1/PointableBackground ### Description Provides access to methods for interacting with the PointableBackground interface. ### Method GET ### Endpoint /api/websites/lightningchart_js-charts_api-documentation_v8_1_1/PointableBackground ### Parameters None ### Request Example ```json {} ``` ### Response #### Success Response (200) - **getDirection** (UIDirections) - Returns the current direction of the background. - **getFillStyle** (FillStyle) - Returns the current fill style of the background. - **getPointerLength** (number) - Returns the current pointer length of the background (deprecated, use getTickLength). - **getStrokeStyle** (LineStyle) - Returns the current stroke style of the background. - **getTickLabelAlignment** (number) - Returns the current tick label alignment of the background. - **getTickLabelPadding** (number) - Returns the current tick label padding of the background (deprecated, use setTickLabelPadding). #### Response Example ```json { "direction": "left", "fillStyle": { "type": "SolidColor" }, "pointerLength": 10, "strokeStyle": { "type": "SolidLine" }, "tickLabelAlignment": 0, "tickLabelPadding": 5 } ``` ## POST /api/websites/lightningchart_js-charts_api-documentation_v8_1_1/PointableBackground ### Description Provides methods for setting various style properties of the PointableBackground interface. ### Method POST ### Endpoint /api/websites/lightningchart_js-charts_api-documentation_v8_1_1/PointableBackground ### Parameters #### Request Body - **setDirection** (UIDirections) - Sets the direction of the background. - **setFillStyle** (FillStyle | ImmutableMutator) - Sets the fill style of the background. - **setPointerLength** (number) - Sets the pointer length of the background (deprecated, use setTickLength). - **setStrokeStyle** (LineStyle | ImmutableMutator) - Sets the stroke style of the background. - **setTickLabelAlignment** (number, optional number) - Sets the tick label alignment of the background. The second optional parameter is for XY axes. - **setTickLabelPadding** (number) - Sets the tick label padding of the background (deprecated, use setTickLabelPadding). ### Request Example ```json { "setDirection": "right", "setFillStyle": { "type": "SolidColor", "color": "#FF0000" }, "setPointerLength": 15, "setStrokeStyle": { "type": "SolidLine", "color": "#0000FF", "thickness": 2 }, "setTickLabelAlignment": { "alignment": 1, "alignment2": 0.5 }, "setTickLabelPadding": 10 } ``` ### Response #### Success Response (200) - **PointableBackground** - Returns the modified PointableBackground object for fluent interface. #### Response Example ```json { "message": "Properties updated successfully." } ``` ``` -------------------------------- ### getLabelConnectorGapStart Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/PieChartWithLabelsOnSides Gets the starting gap size for the label connector lines. ```APIDOC ## GET /api/chart/labels/connector/gapstart ### Description Gets the starting gap size for the label connector lines. ### Method GET ### Endpoint /api/chart/labels/connector/gapstart ### Parameters None ### Request Example ```json {} ``` ### Response #### Success Response (200) - **number** - The gap size in pixels. #### Response Example ```json { "gapStart": 5 } ``` ``` -------------------------------- ### Settings Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/types/Ease Provides information about member visibility and theme options. ```APIDOC ## Settings ### Member Visibility - Protected - Inherited ### Theme - OS - Light - Dark ``` -------------------------------- ### Heatmap Positioning API Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/HeatmapScrollingGridSeriesIntensityValues Provides methods to get the start position and step values for heatmap data points. ```APIDOC ## Heatmap Positioning API ### Description This API group allows retrieval of positioning information for heatmap data, including the starting coordinates and the spacing between consecutive data points. ### GET /api/heatmap/start #### Description Gets the start coordinate of the heatmap on its X and Y axes. This defines where the first heatmap sample will be positioned. #### Method GET #### Endpoint /api/heatmap/start #### Parameters None #### Request Example None #### Response ##### Success Response (200) - **startPosition** (Point) - An object with `x` and `y` properties representing the starting coordinate. ##### Response Example ```json { "startPosition": {"x": 0, "y": 0} } ``` ### GET /api/heatmap/step #### Description Gets the step (offset) between each consecutive heatmap value on the X and Y axes. #### Method GET #### Endpoint /api/heatmap/step #### Parameters None #### Request Example None #### Response ##### Success Response (200) - **stepValue** (Point) - An object with `x` and `y` properties representing the axis offset between heatmap samples. ##### Response Example ```json { "stepValue": {"x": 1, "y": 1} } ``` ``` -------------------------------- ### Subscribe to Data Grid Mouse Events (JavaScript) Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/DataGrid Provides examples of subscribing to various mouse events on Data Grid cells, such as enter, leave, click, and drag. Note that cell background fill must be non-empty for interactions to register. ```javascript DataGrid.onCellMouseEnter(cellData => console.log('Mouse entered cell:', cellData)); DataGrid.onCellMouseLeave(cellData => console.log('Mouse left cell:', cellData)); DataGrid.onCellMouseClick(cellData => console.log('Cell clicked:', cellData)); DataGrid.onCellMouseDoubleClick(cellData => console.log('Cell double-clicked:', cellData)); DataGrid.onCellMouseDown(cellData => console.log('Mouse button down on cell:', cellData)); DataGrid.onCellMouseUp(cellData => console.log('Mouse button up on cell:', cellData)); DataGrid.onCellMouseMove(cellData => console.log('Mouse moved over cell:', cellData)); DataGrid.onCellMouseDrag(cellData => console.log('Mouse dragging over cell:', cellData)); DataGrid.onCellMouseDragStart(cellData => console.log('Mouse drag started on cell:', cellData)); DataGrid.onCellMouseDragStop(cellData => console.log('Mouse drag stopped on cell:', cellData)); DataGrid.onCellMouseWheel(cellData => console.log('Mouse wheel scrolled over cell:', cellData)); ``` -------------------------------- ### OnScreenMenuIconSet Interface Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/OnScreenMenuIconSet Documentation for the OnScreenMenuIconSet interface, including its properties and their types. ```APIDOC ## Interface OnScreenMenuIconSet ### Description Represents the set of icons used for the on-screen menu in LightningChart JS. ### Properties #### CollapseMenu - **Type**: `string | SpriteImagePosition` - **Description**: Controls the visibility or appearance of the collapse menu icon. #### DisableAnimation - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the disable animation icon. #### EnableAnimation - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the enable animation icon. #### ShowMenu - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the show menu icon. #### ZoomIn - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the zoom in icon. #### ZoomInX - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the zoom in X-axis icon. #### ZoomInY - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the zoom in Y-axis icon. #### ZoomOut - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the zoom out icon. #### ZoomOutX - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the zoom out X-axis icon. #### ZoomOutY - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the zoom out Y-axis icon. #### ZoomToFit - **Type**: `string | SpriteImagePosition` - **Description**: Controls the appearance or state of the zoom to fit icon. ### Theme #### OSLightDark - **Description**: Specifies the theme for the on-screen menu icons, supporting OS-defined light or dark modes. ``` -------------------------------- ### getStart Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/SurfaceScrollingGridSeries3D Gets the starting coordinate of the Heatmap on its X and Z axes. ```APIDOC ## GET getStart ### Description Get start coordinate of Heatmap on its X and Z axis. ### Method GET ### Endpoint /getStart ### Returns #### Success Response (200) - **pointXZ** (PointXZ) - Coordinate on axis where 1st heatmap sample will be positioned. #### Response Example ```json { "x": 0, "z": 0 } ``` ``` -------------------------------- ### Get Current Axis Interval Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/PolarAxisAmplitude Retrieves the current interval (start and end values) applied to the axis scale. ```typescript getInterval(): AxisInterval; ``` -------------------------------- ### ChartXY Initialization Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/ChartXYOptions Demonstrates how to create a ChartXY instance with various configuration options, including default axes and themes. ```APIDOC ## POST /api/chartxy ### Description Initializes a new ChartXY instance with specified configuration options. These options are read-only after chart creation. ### Method POST ### Endpoint /api/chartxy ### Parameters #### Query Parameters None #### Request Body - **defaultAxisX** (AxisOptions) - Optional - Configuration for the default X-axis. - **defaultAxisY** (AxisOptions) - Optional - Configuration for the default Y-axis. - **theme** (Theme) - Optional - Specifies the color theme for the chart. - **animationsEnabled** (boolean) - Optional - Convenience flag to enable or disable all animations. - **cursorBuilder** (CursorBuilderXY) - Optional - Builder for the chart's auto cursor. ### Request Example ```json { "defaultAxisX": { "type": "linear" }, "defaultAxisY": { "type": "logarithmic", "base": 10 }, "theme": "light" } ``` ### Response #### Success Response (200) - **chartInstance** (object) - The newly created ChartXY instance. #### Response Example ```json { "chartInstance": "[chart object reference]" } ``` ``` -------------------------------- ### Get Stroke Style Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/ParallelCoordinateAxis Retrieves the line style configuration for the axis line, which extends from the start to the end of the axis. ```javascript chart.getStrokeStyle(); // Returns: LineStyle ``` -------------------------------- ### Theme API Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/DataGrid Retrieves the currently active theme configuration. ```APIDOC ## GET /api/theme ### Description Returns the `Theme` object that is currently being applied to the chart. ### Method GET ### Endpoint /api/theme ### Parameters None ### Request Example ```json {} ``` ### Response #### Success Response (200) - **theme** (Theme) - An object containing the properties of the current theme. #### Response Example ```json { "theme": { "name": "dark", "palette": { "colors": ["#000000", "#FFFFFF"] } } } ``` ``` -------------------------------- ### Axis IntervalRestrictions Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/BarChartValueAxis Gets the current restrictions set for the axis interval, such as minimum or maximum values for start, end, or the interval itself. ```APIDOC ## GET /websites/lightningchart_js-charts_api-documentation_v8_1_1/getIntervalRestrictions ### Description Gets the current restrictions set for the axis interval. These restrictions can define minimum or maximum values for the interval's start, end, or the interval's total span. By default, there are no restrictions. ### Method GET ### Endpoint /websites/lightningchart_js-charts_api-documentation_v8_1_1/getIntervalRestrictions ### Parameters None ### Response #### Success Response (200) - **undefined | { endMax?: number; endMin?: number; intervalMax?: number; intervalMin?: number; startMax?: number; startMin?: number; }** - An object containing the current interval restrictions, or `undefined` if none are set. #### Response Example ```json { "example": { "startMin": 0, "endMax": 1000, "intervalMax": 500 } } ``` ``` -------------------------------- ### Get Scroll Margins Configuration Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/ParallelCoordinateAxis Retrieves the current scroll margins configuration for an axis. This determines the padding at the start and end of the scrollable area. ```javascript chart.getScrollMargins(); // Returns: boolean | { // end: number; // start: number; // } ``` -------------------------------- ### Percentage LUT Configuration Example Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/ValuePaletteOptions Illustrates the configuration of a LUT using percentage values, enabling gradient interpolation between specified colors. This example shows setting the lowest value to black and the highest to red. ```javascript const lut = new LUT({ interpolate: true, percentageValues: true, steps: [ { value: 0, color: ColorCSS('black') }, // lowest value will be black { value: 1, color: ColorCSS('red') } // highest value will be red ] }) ``` -------------------------------- ### Highlight Color Offset Example - Red Shift Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/OfficialTheme Demonstrates how to use `highlightColorOffset` to shift component colors towards red when highlighted. This property accepts a `Color` object, and the example shows a `ColorRGBA` value with positive red and negative green/blue components. ```javascript // Example, highlighted components shift towards red. highlightColorOffset: ColorRGBA(100, -50, -50, 0) ``` -------------------------------- ### Get Scroll Margins Configuration Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/BarChartCategoryAxis Retrieves the current configuration for scroll margins. This can be a boolean or an object specifying the start and end scroll margins. ```typescript getScrollMargins(): boolean | { end: number; start: number; } ``` -------------------------------- ### Get Current Axis Interval Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/Axis3D Retrieves the current scale interval applied to the axis, returning an object that contains the start and end values of the interval. ```typescript const interval = axis.getInterval(); console.log('Current interval:', interval); ``` -------------------------------- ### Pyramid Chart Configuration Examples (JavaScript) Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/PyramidOptions Demonstrates how to configure a Pyramid Chart with default settings and with a specified type using PyramidChartOptions. This is useful for customizing label positioning within pyramid slices. ```javascript // Pyramid Chart with default type // undefined // Pyramid Chart with specified type const chartConfig = { pyramidOptions: { type: PyramidChartTypes.LabelsInsideSlices } }; ``` -------------------------------- ### PointMarker API Methods Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/PointMarker This section details the methods available for the PointMarker object, including setting margins, pointer events, rotation, and shape. ```APIDOC ## PointMarker API ### setMargin #### Description Set margin around object in pixels. #### Method `setMargin(margin: number | Partial): PointMarker` #### Parameters * **margin** (number | Partial) - Required - Number with pixel margins for all sides or datastructure with individual pixel margins for each side. Any side can be omitted, only passed values will be overridden. ### setPointerEvents #### Description Set mouse interactions enabled or disabled. #### Method `setPointerEvents(state: boolean): PointMarker` #### Parameters * **state** (boolean) - Required - Specifies state of mouse interactions. ### setRotation #### Description Set rotation of point shape in degrees. #### Method `setRotation(rotationDeg: number): PointMarker` #### Parameters * **rotationDeg** (number) - Required - Rotation in degrees. ### setShape #### Description Set displayed shape. #### Method `setShape(shape: Icon | PointShape): PointMarker` #### Parameters * **shape** (Icon | PointShape) - Required - The shape to display for the point marker. #### Request Example ```javascript // Example setShape(PointShape.Star) ``` See PointShape for all available options. ``` -------------------------------- ### Retrieve Axis Interval Restrictions Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/PolarAxisAmplitude Gets the current restrictions set for the axis interval, such as minimum/maximum values for the interval start, end, or duration. By default, no restrictions are applied. ```typescript getIntervalRestrictions(): undefined | { endMax?: number; endMin?: number; intervalMax?: number; intervalMin?: number; startMax?: number; startMin?: number; } ``` -------------------------------- ### Get Interval Restrictions Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/BarChartCategoryAxis Retrieves the current restrictions set for the axis interval. By default, there are no restrictions. This can include minimum/maximum values for the interval start, end, and the interval itself. ```typescript getIntervalRestrictions(): undefined | { endMax?: number; endMin?: number; intervalMax?: number; intervalMin?: number; startMax?: number; startMin?: number; } ``` -------------------------------- ### Position UI Element in Pixels using Relative Coordinates (JavaScript) Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/BarChart Demonstrates how to position a UI element, such as a TextBox, using the 'relative' coordinate system. This system is based on pixels from the bottom-left corner of the control. It's recommended for positioning UI elements and is preferred over uiScale for long-term support. ```javascript // Position UI element in pixels by supplying `Control.coordsRelative` as its positioning system. const textBox = Control.addUIElement(UIElementBuilders.TextBox, Control.coordsRelative) .setOrigin(UIOrigins.LeftBottom) .setPosition({ x: 100, y: 20 }) ``` -------------------------------- ### Get Current Axis Interval (JavaScript) Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/ParallelCoordinateAxis Retrieves the currently applied interval for the axis scale, returning an object that contains the start and end values of the current axis range. ```javascript const currentInterval = axis.getInterval() ``` -------------------------------- ### Initialize LightningChart JS with Options Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/LightningChartOptions Demonstrates how to initialize LightningChart JS using the lightningChart function, optionally providing configuration options like a license key. This setup is performed before creating any charts or series. ```javascript const lcjs = lightningChart({ // Either supply license number, or omit for automatic community license. // license: 'my-license-number' }) // Create charts... const chart = lcjs.ChartXY() ``` -------------------------------- ### Get Axis Interval Restrictions (LightningChart JS) Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/GenericAxis Retrieves any restrictions set on the axis interval, such as minimum/maximum values for the start, end, or the interval itself. By default, no restrictions are applied. ```javascript const intervalRestrictions = axis.getIntervalRestrictions(); ``` -------------------------------- ### FontSettings Usage Examples Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/FontSettings Illustrates how to use FontSettings with `setFont` methods. ```APIDOC **FontSettings usage:** Use FontSettings with: * `setFont` methods: * setTitleFont * setTextFont * setTextFont ```javascript // Example 1, set chart title font with explicit font. ChartXY.setTitleFont(new FontSettings({ size: 20, family: 'Arial, Helvetica, sans-serif', weight: 'bold', style: 'italic' })) // Example 2, override chart title font, specifying only a sub-set of properties. ChartXY.setTitleFont((font) => font .setSize(20) ) ``` ``` -------------------------------- ### Get Current Axis Interval Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/BarChartCategoryAxis Fetches the currently applied scale interval for the axis. The returned object contains the start and end values of the current axis scale. ```typescript getInterval(): AxisInterval ``` -------------------------------- ### AnimationEasing Function Signature Example Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/types/AnimationEasing Illustrates the expected function signature for an AnimationEasing. It takes a starting value, an ending value, and the duration of the animation in milliseconds to return an easing function. ```typescript function easeInOutSine(start: number, end: number, duration: number): Ease { // Implementation of easing logic return (progress: number) => { return start + (end - start) * (0.5 - 0.5 * Math.cos(Math.PI * progress)); }; } ``` -------------------------------- ### SolidLineStyleProperties Interface Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/SolidLineStyleProperties Details the properties, hierarchy, and usage of the SolidLineStyleProperties interface. ```APIDOC ## Interface SolidLineStyleProperties Interface for all properties of a LineStyle. #### Hierarchy * SolidLineStyleProperties * DashedLineProperties ##### Index ### Properties * `fillStyle` (FillStyle) - Line fill style. * `lineType` ("solid" | "dashed") - Specifies the type of line, either solid or dashed. * `thickness` (number) - Line thickness. -1 can be used to signify the smallest available thickness for potential GPU performance benefits, though it may result in less detailed lines. Defaults to 1. * `type` ("linestyle") - The type identifier for the line style. ### Settings #### Member Visibility * Protected * Inherited #### Theme OSLightDark ``` -------------------------------- ### Get Scroll Margins Configuration Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/PolarAxisAmplitude Retrieves the configuration for scroll margins, which define the buffer zone around the axis content during scrolling. This can be a boolean or an object specifying start and end margins. ```typescript getScrollMargins(): boolean | { end: number; start: number; } ``` -------------------------------- ### MPoint Interface Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/MPoint Documentation for the MPoint interface, which represents a mutable 2-dimensional location. ```APIDOC ## Interface MPoint Interface for a mutable data-structure which represents a 2-dimensional location. #### Hierarchy * MPoint * MColorPoint ### Properties #### x `x`: number Location in X-dimension. #### y `y`: number Location in Y-dimension. ### Settings #### Member Visibility * Protected * Inherited #### Theme OSLightDark ``` -------------------------------- ### Set Data Grid Column Width (JavaScript) Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/DataGrid Demonstrates setting the width of a Data Grid column using pixel values, minimum/maximum constraints, or restoring default behavior. This allows for precise control over column layout. ```javascript DataGrid.setColumnWidth(0, 200); DataGrid.setColumnWidth(0, { min: 100 }); DataGrid.setColumnWidth(0, { max: 300 }); DataGrid.setColumnWidth(0, { min: 100, max: 300 }); DataGrid.setColumnWidth(undefined); ``` -------------------------------- ### Get Interval Restrictions Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/ParallelCoordinateAxis Retrieves the current interval restrictions for an axis. By default, no restrictions are applied. The returned object can specify minimum and maximum values for the start, end, and interval of the axis. ```javascript chart.getIntervalRestrictions(); // Returns: undefined | { // endMax?: number; // endMin?: number; // intervalMax?: number; // intervalMin?: number; // startMax?: number; // startMin?: number; // } ``` -------------------------------- ### ResizeEvent Interface Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/ResizeEvent Documentation for the ResizeEvent interface, detailing its properties. ```APIDOC ## Interface ResizeEvent ### Description Represents an event triggered by a resize operation within LightningChart JS. ### Hierarchy * ResizeEvent ### Properties #### engineHeight - **engineHeight** (number) - The height of the chart's rendering engine. #### engineWidth - **engineWidth** (number) - The width of the chart's rendering engine. #### height - **height** (number) - The current height of the chart element. #### width - **width** (number) - The current width of the chart element. ### Settings #### Member Visibility * Protected * Inherited #### Theme * OSLightDark ``` -------------------------------- ### Get Value Indicators - LightningChart JS Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/GaugeChart Retrieves an array of value indicators currently configured for the gauge. Each indicator includes color, start and end values, and optional labels. ```javascript gauge.getValueIndicators() ``` -------------------------------- ### Get Axis Interval Restrictions Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/Axis3D Retrieves the current restrictions set on the axis interval, such as minimum/maximum values for the start, end, or interval size. Returns `undefined` if no restrictions are applied. ```typescript const restrictions = axis.getIntervalRestrictions(); console.log('Interval restrictions:', restrictions); ``` -------------------------------- ### Funnel Chart Configuration Examples Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/FunnelOptions Demonstrates how to configure a Funnel Chart using FunnelOptions. The first example shows a default configuration, while the second specifies a particular chart type using FunnelChartTypes.LabelsOnSides. ```javascript // Funnel Chart with default type undefined // Funnel Chart with specified type { funnelOptions: { type: FunnelChartTypes.LabelsOnSides } } ``` -------------------------------- ### Get Scroll Margins Configuration Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/Axis3D Retrieves the current configuration for scroll margins, which define padding at the start and end of the scrollable axis area. Can return a boolean or a specific configuration object. ```typescript const scrollMargins = axis.getScrollMargins(); console.log('Scroll margins:', scrollMargins); ``` -------------------------------- ### UIRowBuilder Methods Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/UIRowBuilder Provides details on the methods available for the UIRowBuilder interface, including addStyler and setBackground. ```APIDOC ## Interface UIRowBuilder Interface for builder of UiRow layout #### Type Parameters * #### BackgroundType extends UIBackground = UIBackground #### Hierarchy * UIElementBuilder> * UIRowBuilder ##### Index ### Methods addStyler setBackground ## Methods ### addStyler * addStyler(styler: UIElementStyler>): UIRowBuilder * Make new Builder with an additional styler. ### Returns New Builder #### Parameters * ##### styler: UIElementStyler> UiElementStyler for specific type #### Returns UIRowBuilder ### setBackground * setBackground(newBackground: BackgroundConstructor): UIRowBuilder * Make new RowBuilder with different background #### Type Parameters * #### NewBackgroundType extends UIBackground #### Parameters * ##### newBackground: BackgroundConstructor #### Returns UIRowBuilder ### Settings #### Member Visibility * Protected * Inherited #### Theme OSLightDark ``` -------------------------------- ### Highlighting API Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/HeatmapScrollingGridSeriesIntensityValues Manages the highlighting state and hover behavior for chart components. ```APIDOC ## Highlighting API ### Description This API group controls the highlighting behavior of chart components, including hover effects and animation states. ### GET /api/components/highlight #### Description Gets the state of component highlighting. If highlight animations are enabled, this method returns the un-animated highlight value. #### Method GET #### Endpoint /api/components/highlight #### Parameters None #### Request Example None #### Response ##### Success Response (200) - **highlightValue** (number) - A value between 0 and 1, where 1 indicates fully highlighted. ##### Response Example ```json { "highlightValue": 0.8 } ``` ### GET /api/components/highlightOnHover #### Description Gets a boolean flag indicating whether the object should highlight when the mouse hovers over it. #### Method GET #### Endpoint /api/components/highlightOnHover #### Parameters None #### Request Example None #### Response ##### Success Response (200) - **highlightOnHoverEnabled** (boolean) - `true` if the component highlights on hover, `false` otherwise. ##### Response Example ```json { "highlightOnHoverEnabled": true } ``` ``` -------------------------------- ### Alter Samples Starting From - Last Sample Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/DataSetXYAPI This example demonstrates how to alter the last sample in a dataset using `alterSamplesStartingFrom` by referencing its index. The `getNextSampleIndex()` method is used to dynamically determine the index of the last sample. ```javascript DataSetXY.alterSamples(DataSetXY.getNextSampleIndex() - 1, { y: [0] }) ``` -------------------------------- ### UIPointableBuilder Interface Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/UIPointableBuilder Documentation for the UIPointableBuilder interface, including its type parameters, hierarchy, and available methods. ```APIDOC ## Interface UIPointableBuilder #### Type Parameters * #### T extends UIPart = UIPart #### Hierarchy * UIElementBuilder * UIPointableBuilder * UIPointableTextBoxBuilder ##### Index ### Methods addStyler setDirection ## Methods ### addStyler * addStyler(styler: UIElementStyler): UIPointableBuilder * Make new Builder with an additional styler. ### Returns New Builder #### Parameters * ##### styler: UIElementStyler UiElementStyler for specific type #### Returns UIPointableBuilder ### setDirection * setDirection(direction: UIDirections): UIPointableBuilder * #### Parameters * ##### direction: UIDirections #### Returns UIPointableBuilder ### Settings #### Member Visibility * Protected * Inherited #### Theme OSLightDark ``` -------------------------------- ### Alter Samples Starting From - Basic Usage Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/DataSetXYAPI This example demonstrates the basic usage of `alterSamplesStartingFrom` to set the first sample in a dataset to { x: 0, y: 0 }. This method modifies existing samples by referencing their index. ```javascript DataSetXY.alterSamples(0, { x: [0], y: [1] }) ``` -------------------------------- ### UIElementBuilder Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/UIElementBuilder Provides an interface for building UI elements with customizable stylers. ```APIDOC ## Interface UIElementBuilder Interface for abstract UiElement builder. #### Type Parameters * #### UIElementType extends UIPart = UIPart #### Hierarchy * UIElementBuilder * UIPointableBuilder * UIColumnBuilder * UIRowBuilder * UICheckBoxBuilder * UILUTCheckBoxBuilder * UIPointableTextBoxBuilder * UITextBoxBuilder * UILUTRangeBuilder ##### Index ### Methods addStyler ## Methods ### addStyler * addStyler(styler: UIElementStyler): UIElementBuilder * Make new Builder with an additional styler. ### Returns New Builder #### Parameters * ##### styler: UIElementStyler UiElementStyler for specific type #### Returns UIElementBuilder ### Settings #### Member Visibility * Protected * Inherited #### Theme OSLightDark ``` -------------------------------- ### Get Theme Effect State Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/RangeSeries Retrieves the state of theme effects on a component. Returns a boolean indicating whether the theme effect is enabled or disabled for the component. Example shows how to disable the effect. ```javascript getEffect(): boolean * Get theme effect enabled on component or disabled. A theme can specify an Effect to add extra visual oomph to chart applications, like Glow effects around data or other components. Whether this effect is drawn above a particular component can be configured using the `setEffect` method. ``` // Example, disable theme effect from a particular component. Component.setEffect(false) ``` For the most part, theme effects are **enabled** by default on most components. Theme effect is configured with effect property. ### Returns Boolean that describes whether drawing the theme effect is enabled around the component or not. ``` -------------------------------- ### Get Current Axis Interval (LightningChart JS) Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/GenericAxis Fetches the currently applied interval (range) of the axis. The returned object contains the start and end values of the axis's visible scale. ```javascript const currentInterval = axis.getInterval(); ``` -------------------------------- ### Create ChartXY with Light Theme Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/ChartXYOptions Illustrates how to initialize a ChartXY with a specific color theme, in this case, the 'light' theme. This allows for immediate visual customization. ```javascript const chart = LightningChart.ChartXY({ theme: Themes.light }); ``` -------------------------------- ### Create Pie Chart with Default Configuration Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/PieChartOptions Illustrates the creation of a Pie Chart using its default settings. This is the simplest way to initialize a Pie Chart when no specific configurations are required. ```javascript const chart = LightningChart.Pie({}) ``` -------------------------------- ### Get Row Height in Dashboard Layout Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/Dashboard Retrieves the relative height of a specific row within a dashboard layout. Rows are indexed starting from 0, and by default, all row heights are set to 1. ```javascript dashboard.getRowHeight( 0 ) ``` -------------------------------- ### UITextBoxBuilder API Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/UITextBoxBuilder Documentation for the UITextBoxBuilder interface, including its methods for adding stylers and setting backgrounds. ```APIDOC ## Interface UITextBoxBuilder Interface for 'TextBox'-builder. #### Type Parameters * #### BackgroundType extends UIBackground = UIBackground #### Hierarchy * UIElementBuilder> * UITextBoxBuilder ##### Index ### Methods addStyler setBackground ## Methods ### addStyler * addStyler(styler: UIElementStyler>): UITextBoxBuilder * Make new Builder with an additional styler. ### Returns New Builder #### Parameters * ##### styler: UIElementStyler> UiElementStyler for specific type #### Returns UITextBoxBuilder ### setBackground * setBackground(newBackground: BackgroundConstructor): UITextBoxBuilder * Make new TextBoxBuilder with different background #### Type Parameters * #### NewBackgroundType extends UIBackground & InternalBackground #### Parameters * ##### newBackground: BackgroundConstructor Constructor for desired Background. See UIBackgrounds for a collection of options. #### Returns UITextBoxBuilder ### Settings #### Member Visibility * Protected * Inherited #### Theme OSLightDark ``` -------------------------------- ### Get Column Width in Dashboard Layout Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/Dashboard Retrieves the relative width of a specific column within a dashboard layout. Columns are indexed starting from 0, and by default, all column widths are set to 1. ```javascript dashboard.getColumnWidth( 0 ) ``` -------------------------------- ### BarChart Methods Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/BarChart Lists all available methods for the BarChart class, categorized for easier understanding of their functionality. ```APIDOC ### Methods addCursor addEventListener addLegend addUIElement dispose getAnimationsEnabled getBackgroundFillStyle getBackgroundStrokeStyle getBar getBars getBarsEffect getBarsMargin getCategoryLabels getCornerRadius getCursor getCursorFormatting getCursorMode getIsInView getLabelFittingEnabled getLabelFittingMargins getMinimumSize getPadding getSeries getSeriesBackgroundEffect getSeriesBackgroundFillStyle getSeriesBackgroundStrokeStyle getSizePixels getSorting getTheme getTitle getTitleEffect getTitleFillStyle getTitleFont getTitleMargin getTitleRotation getTitleShadow getTitleSize getValueLabels isDisposed removeEventListener saveToFile setAnimationCategoryPosition setAnimationValues setAnimationsEnabled setBackgroundFillStyle setBackgroundStrokeStyle setBarsEffect setBarsMargin setCategoryLabels setCornerRadius setCursor setCursorDynamicBehavior setCursorFormatting setCursorMode setCustomCursor setData setDataGrouped setDataStacked setLabelFittingEnabled setLabelFittingMargins setPadding setSeriesBackgroundEffect setSeriesBackgroundFillStyle setSeriesBackgroundStrokeStyle setSeriesHighlightOnHover setSorting setTitle setTitleEffect setTitleFillStyle setTitleFont setTitleMargin setTitleRotation setTitleShadow setValueLabels translateCoordinate ``` -------------------------------- ### Get Axis Interval Restrictions - BarChartValueAxis Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/BarChartValueAxis Retrieves the current restrictions set for the axis interval. By default, there are no restrictions. The returned object can specify minimum and maximum values for the interval start, end, and the interval itself. ```typescript getIntervalRestrictions(): undefined | { endMax?: number; endMin?: number; intervalMax?: number; intervalMin?: number; startMax?: number; startMin?: number; } ``` -------------------------------- ### SwitchEvent Interface Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/interfaces/SwitchEvent Documentation for the SwitchEvent interface, including its properties and hierarchy. ```APIDOC ## Interface SwitchEvent ### Description Represents a switch event within the LightningChart JS library. ### Hierarchy * SwitchEvent ### Properties #### state - **state** (boolean) - The current state of the switch. True if switched on, false otherwise. ``` -------------------------------- ### Get Scroll Margins Configuration Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/PolarAxis Retrieves the current configuration for scroll margins. Scroll margins define extra space around the axis content when scrolling. The configuration can be a boolean or an object specifying start and end margins. ```javascript /** * Get value of setScrollMargins * @returns {boolean | { end: number; start: number; }} Scroll margins configuration */ function getScrollMargins(): boolean | { end: number; start: number; }; ``` -------------------------------- ### Get Scroll Margins Configuration - BarChartValueAxis Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/BarChartValueAxis Retrieves the configuration for scroll margins applied to the axis. This can be a boolean value or an object specifying the start and end scroll margins. Scroll margins affect how scrolling behaves near the axis limits. ```typescript getScrollMargins(): boolean | { end: number; start: number; } ``` -------------------------------- ### DataGrid Content and Title Configuration Source: https://lightningchart.com/js-charts/api-documentation/v8.1.1/classes/DataGrid Methods for setting the overall content of a DataGrid and configuring its title properties. ```APIDOC ## DataGrid Content and Title Configuration ### setTableContent #### Description Sets the content of a table of cells starting from column 0 and row 0. This method creates new cells if they don't exist and overrides existing content within the specified table area. It does not remove content outside this area. #### Method `setTableContent(content: DataGridCellContent[][]): DataGrid` #### Parameters * **content** (DataGridCellContent[][]) - Required - A 2D array of data grid cell content. #### Request Example ```javascript DataGrid.setTableContent([ ['First Name', 'Second Name'], ['John', 'Smith'] ]) ``` #### Returns DataGrid ### setTitle #### Description Sets the text for the chart title. #### Method `setTitle(title: string): DataGrid` #### Parameters * **title** (string) - Required - The chart title as a string. #### Returns DataGrid (for fluent interface) ### setTitleEffect #### Description Enables or disables theme effects on the component. Theme effects can add visual enhancements like glow effects. By default, theme effects are enabled on most components. #### Method `setTitleEffect(enabled: boolean): DataGrid` #### Parameters * **enabled** (boolean) - Required - Whether the theme effect should be enabled. #### Request Example ```javascript // Disable theme effect from a particular component. Component.setEffect(false) ``` #### Returns DataGrid ### setTitleFillStyle #### Description Sets the fill style for the chart title. #### Method `setTitleFillStyle(value: FillStyle | ImmutableMutator): DataGrid` #### Parameters * **value** (FillStyle | ImmutableMutator) - Required - Either a FillStyle object or a function to create a new FillStyle based on the current value. #### Request Example ```javascript // Create a new style Chart.setTitleFillStyle(new SolidFill({ color: ColorHEX('#F00') })) // Change transparency Chart.setTitleFillStyle((solidFill) => solidFill.setA(80)) // Set hidden Chart.setTitleFillStyle(emptyFill) ``` #### Returns DataGrid ### setTitleFont #### Description Sets the font for the chart title. #### Method `setTitleFont(value: FontSettings | ImmutableMutator): DataGrid` #### Parameters * **value** (FontSettings | ImmutableMutator) - Required - Either a FontSettings object or a function to create new FontSettings based on the current value. #### Request Example ```javascript // Create a new FontSettings Chart.setTitleFont(new FontSettings({ size: 24, style: 'italic' })) // Change existing settings Chart.setTitleFont((fontSettings) => fontSettings.setWeight('bold')) ``` #### Returns DataGrid ```