scichart

SciChart.js: High-performance WebGL/WebGPU JavaScript chart library for real-time data and millions of data points. 2D and 3D charts for React, Angular and Vue, with TypeScript support.
1,187,824 117
Install
npm install scichart
Latest Version:6.0.14
License:https://www.scichart.com/scichart-eula
Last Updated:Oct 22, 2026
Links: GitHub  ·  npm
Maintainer: klishevich

SciChart.js: High Performance JavaScript Chart Library

SciChart.JS v6

Find out what's new in every Major and Minor release at the Change Log here

Documentation

Find out our Documentation web-site here

SciChart.js is a High Performance JavaScript Chart library. Leveraging WebGL, WebGPU and WebAssembly to achieve incredible big-data and real-time performance. Fast and able to draw millions of datapoints in realtime, our charts will never cause your app to slow down again!

Why SciChart?

SciChart has an extremely configurable and extensible API and is perfect for scientific, financial, medical, engineering and enterprise applications, apps with demanding performance requirements or complex and mission critical charting.

SciChart.js 2D 3D chart types

Releases

SciChart.js v6 is the first release supporting WebGPU which sagnificantly improves multichart scenarious like dashboards. Our userbase has demanding requirements from F1 to medical dashboards, IoT telemetry in industrial, aerospace and defense applications, and v6 answers them with:

We release often and if you want to report a bug, request a feature or give general feedback contact us!

Upgrading to v6

Read the v5 to v6 Breaking Changes first. Most apps need two changes: the WebAssembly copy step is now a single _wasm directory copy (the separate scichart2d.wasm / scichart3d.wasm files are gone), and a SciChart3DSurface.configure() call should be deleted because SciChartSurface.configure() now configures both engines.

License

SciChart.js is commercial software which ships with a free community edition for personal, non-commercial, educational or blogger/tutorial use.

Licensing Links

Demo Application

Getting Started

We've prepared a short Getting Started guide here.

This will walk you through the entire process of starting in your favourite framework and show you where tutorials and documentation are and examples.

Useful Links

Features & benefits

Onboarding

Support

Purchasing

Quick Start with NPM and Webpack

Tutorial

See full npm + Webpack tutorial here

SciChart.js can be loaded as an ES6 module with Babel or TypeScript transpiler.

  1. Install SciChart.js
npm install scichart
  1. Create a simple chart by putting this into src/index.js file
import { SciChartSurface, NumericAxis } from "scichart";

async function initSciChart() {
    const { sciChartSurface, wasmContext } = await SciChartSurface.create("scichart-root");

    // Create an X,Y Axis and add to the chart
    const xAxis = new NumericAxis(wasmContext);
    const yAxis = new NumericAxis(wasmContext);

    sciChartSurface.xAxes.add(xAxis);
    sciChartSurface.yAxes.add(yAxis);
}

initSciChart();
  1. Create src/index.html file
<html lang="en-us">
    <head>
        <meta charset="utf-8" />
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
        <title>SciChart.js Tutorial 1</title>
        <script async type="text/javascript" src="bundle.js"></script>
    </head>
    <body>
        <h1>Hello SciChart.js world!</h1>
        <p>In this example we setup webpack, scichart and create a simple chart with one X and Y axis</p>

        <!-- the Div where the SciChartSurface will reside -->
        <div id="scichart-root" style="width: 800px; height: 600px;"></div>
    </body>
</html>
  1. Serve the WebAssembly files. SciChart.js ships its WebAssembly binaries in node_modules/scichart/_wasm/. Copy that whole directory next to your bundle, e.g. with webpack:
new CopyPlugin({
    patterns: [{ from: "node_modules/scichart/_wasm/", to: "" }]
});

Or skip the copy step entirely and load them from our CDN by calling SciChartSurface.useWasmFromCDN() before you create a chart.

  1. Run it npm start. As a result you will see a simple line chart.

Tree-shaking

v6 ships dual ES-module and CommonJS builds, so bundlers that honour the exports and sideEffects fields drop the parts of SciChart.js you never import - including the 3D engine, which is a separate WebAssembly module fetched only when you create a 3D chart.

Your bundler has to see ES-module syntax for this to work. TypeScript projects that emit CommonJS get the non-shakeable build, so set:

{
    "compilerOptions": {
        "module": "esnext",
        "moduleResolution": "bundler"
    }
}

Quick Start with Browser Bundle (Iife bundle)

Tutorial

See the full browser bundle tutorial here

If your environment does not include a bundler like Parcel or Webpack, you can still load SciChart.js using the browser bundle module from jsDelivr

  1. Include index.min.js in your webpage
<!-- Include specific version into index.html -->
<script src="https://cdn.jsdelivr.net/npm/scichart@6.0.0-alpha.196/index.min.js" crossorigin="anonymous"></script>
  1. Create scichart-example.js file with a simple chart
// Equivalent of imports when using index.min.js is to declare global variables like this
const { SciChartSurface, NumericAxis, FastLineRenderableSeries, XyDataSeries } = SciChart;

async function initSciChart() {
    // Create the SciChartSurface in the div 'scichart-root'
    const { sciChartSurface, wasmContext } = await SciChartSurface.create("scichart-root");

    // Create an X,Y Axis and add to the chart
    const xAxis = new NumericAxis(wasmContext);
    const yAxis = new NumericAxis(wasmContext);

    sciChartSurface.xAxes.add(xAxis);
    sciChartSurface.yAxes.add(yAxis);

    // Add a series
    sciChartSurface.renderableSeries.add(
        new FastLineRenderableSeries(wasmContext, {
            dataSeries: new XyDataSeries(wasmContext, {
                xValues: [0, 1, 2, 3, 4],
                yValues: [2, 1, 4, 3, 2]
            })
        })
    );
}

Related Packages

ag-charts-community

Advanced Charting / Charts supporting Javascript / Typescript / React / Angular...

60,567,126 485
ag-charts-enterprise

Advanced Charting / Charts supporting Javascript / Typescript / React / Angular...

44,135,273 485
sryd-charts-enterprise

Advanced Charting / Charts supporting Javascript / Typescript / React / Angular...

1,397
@syidax/advanced-pro

Interactive charts and data grids for React, Angular, Vue and the web. Pro visua...

262
@syidax/advanced

Interactive charts and data grids for React, Angular, Vue and the web. Community...

255

Version History

Version Released License
6.0.14 https://www.scichart.com/scichart-eula
6.0.13 https://www.scichart.com/scichart-eula
6.0.8 https://www.scichart.com/scichart-eula
6.0.6 https://www.scichart.com/scichart-eula
6.0.1 https://www.scichart.com/scichart-eula
Pre-releases (63)
Version Released License
6.0.0-alpha.197 https://www.scichart.com/scichart-eula
6.0.0-alpha.196 https://www.scichart.com/scichart-eula
6.0.0-alpha.195 https://www.scichart.com/scichart-eula
6.0.0-alpha.194 https://www.scichart.com/scichart-eula
6.0.0-alpha.193 https://www.scichart.com/scichart-eula