μPlot
μPlotは高速で軽量、さまざまなタイプのチャートに対応できるオープンソースのチャートライブラリです。Canvas 2Dベースで描かれます。
非依存で単体で動作、マルチ時系列や面グラフ、棒グラフ、折れ線やローソク足の他、様々なタイプのデータをチャート化する事が可能です。
代わりに、軽量高速を実現する為にアニメーションエフェクトやデータの集計や合計、統計処理の他、先発のチャートライブラリによく含まれる「チャートの描写に不要な機能」を削いだみたいです。
以下は他のチャートライブラリとのパフォーマンスの比較表です。
| lib | size | done | js,rend,paint,sys | heap peak,final | interact (10s) | | -------------- | ------- | ------- | ----------------- | --------------- | ------------------- | | uPlot | 26 KB | 68 ms | 99 3 4 68 | 12 MB 4 MB | 196 458 135 264 | | Chart.js-next | 222 KB | 189 ms | 275 3 3 95 | 32 MB 21 MB | 3411 35 112 6322 | | LightningChart | 964 KB | --- ms | 378 4 2 70 | 24 MB 18 MB | 9647 32 59 113 | | dygraphs | 125 KB | 190 ms | 286 5 3 174 | 57 MB 46 MB | 2329 272 333 415 | | CanvasJS | 477 KB | 320 ms | 400 4 2 103 | 40 MB 25 MB | 2282 541 337 481 | | Flot | 494 KB | 320 ms | 205 7 6 307 | 24 MB 24 MB | --- | | dvxcharts | 369 KB | 347 ms | 633 41 45 72 | 42 MB 24 MB | 1476 891 294 280 | | Highcharts | 381 KB | --- ms | 757 9 2 63 | 27 MB 23 MB | 1986 780 207 311 | | Chart.js | 245 KB | 668 ms | 747 6 7 174 | 82 MB 76 MB | 5565 5 13 4111 | | Plotly.js | 3400 KB | 483 ms | 849 10 4 87 | 39 MB 24 MB | 1601 216 58 203 | | ECharts | 781 KB | --- ms | 789 4 9 1119 | 79 MB 79 MB | 2027 64 59 7696 | | ApexCharts | 459 KB | --- ms | 2298 30 135 61 | 151 MB 151 MB | 2223 259 7802 66 | | ZingChart | 857 KB | 2632 ms | 2934 8 1 68 | 121 MB 97 MB | --- | | amCharts | 1200 KB | 6147 ms | 7159 56 15 112 | 251 MB 251 MB | 6244 1163 598 448 |
サンプルもドキュメントも用意があるのでチェックしてみてください。ライセンスはMITとの事です。