@damoqiongqiu/ice-chart 0.28.0 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -4
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/types/ICEChart.d.mts +59 -5
- package/dist/types/ICEChart.d.ts +59 -5
- package/dist/types/a11y.d.mts +13 -2
- package/dist/types/a11y.d.ts +13 -2
- package/dist/types/components/series/HeatmapSeries.d.mts +47 -0
- package/dist/types/components/series/HeatmapSeries.d.ts +47 -0
- package/dist/types/components/series/LineSeries.d.mts +32 -3
- package/dist/types/components/series/LineSeries.d.ts +32 -3
- package/dist/types/components/series/ScatterSeries.d.mts +26 -0
- package/dist/types/components/series/ScatterSeries.d.ts +26 -0
- package/dist/types/components/series/SeriesBase.d.mts +52 -1
- package/dist/types/components/series/SeriesBase.d.ts +52 -1
- package/dist/types/internal.d.mts +134 -0
- package/dist/types/internal.d.ts +134 -0
- package/dist/types/option/normalize.d.mts +20 -1
- package/dist/types/option/normalize.d.ts +20 -1
- package/dist/types/types.d.mts +90 -1
- package/dist/types/types.d.ts +90 -1
- package/dist/types/util/chunks.d.mts +105 -0
- package/dist/types/util/chunks.d.ts +105 -0
- package/dist/types/util/ring.d.mts +70 -0
- package/dist/types/util/ring.d.ts +70 -0
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -131,7 +131,7 @@ gray-100~900、`--bs-border-radius`、`--bs-body-font-family`),图表放进
|
|
|
131
131
|
| 跨图联动 | hover / zoom / brush | `linkCharts([a, b])`,按 x 数据值对齐 |
|
|
132
132
|
| 动画 | 进入与数据更新 | 走引擎的 `AnimationManager`(`state.progress` 驱动) |
|
|
133
133
|
| 主题 | light / dark / 自定义片段 | 默认色板取自 ice-render 的设计 token |
|
|
134
|
-
| 大数据 | LTTB 降采样 + 二分命中 | 5 万点 × 3 系列构建 35ms,每条曲线只绘制约 2
|
|
134
|
+
| 大数据 | LTTB 降采样 + 二分命中 + 列存(虚拟)系列 | 5 万点 × 3 系列构建 35ms,每条曲线只绘制约 2 点/像素;**100 万点散点**开 `virtual: true` 后堆 2.2MB、命中 0.00ms —— [机制与复用边界](./docs/column-store-virtual-series.md) |
|
|
135
135
|
| 无障碍 | 数据表镜像 + aria-live 播报 | `attachA11yMirror()` / `getDataTable()` / `getA11yTree()` |
|
|
136
136
|
|
|
137
137
|
> **内置文案可配**:无障碍数据表的表头与默认 tooltip 标签可以用 `option.labels` 覆盖
|
|
@@ -181,6 +181,11 @@ gray-100~900、`--bs-border-radius`、`--bs-body-font-family`),图表放进
|
|
|
181
181
|
| `bar` | 类目在 x(默认) | 分组(多系列)与堆叠(同 `stack` 名);数据项写 `{ value, color }` 可**逐项配色** |
|
|
182
182
|
| `bar`(横向) | `yAxis: { type: 'category', data: [...] }` + `xAxis: { type: 'value' }` | 排行榜;类目也可写在数据项的 `name` 上 |
|
|
183
183
|
| `scatter` | `data: [[x, y, size]]` + `symbolSizeRange` | 第三维映射成直径即气泡图;`symbolSize` 也可传函数 |
|
|
184
|
+
| `scatter` / `line` / `area`(大数据) | `virtual: true` + `data: { x, y }`(列式,推荐 `Float64Array`) | 列存(虚拟)系列:百万级点不建数据点对象与按点缓存,堆 2.2MB / 命中 0.00ms(折线按像素列保留极值)。代价(不进快照、`params.data` 为空)见 [机制与复用边界](./docs/column-store-virtual-series.md) |
|
|
185
|
+
| `heatmap`(大数据) | `virtual: true` + `data: { xCategories, yCategories, values }`(稠密矩阵) | 列存矩阵:1000×1000 = 100 万格堆 3.3MB、命中 O(1)(普通路 4 万格单次命中已 6.8ms);亚像素按屏幕像素块聚合,热点取最大值 |
|
|
186
|
+
| 实时流(大数据) | `virtual: true` + `appendData(id, items, { maxPoints })` | 列存环形缓冲:窗口满了覆盖最老的,不 concat、不重建。10 万点窗口 **0.40ms/次**(普通路径 5.80ms、p95 15.10ms) |
|
|
187
|
+
| 亿级数据 | `virtual: true` + `data: { sizes, rangeOf, yDomain, loadChunk }` | 分块按需加载:只驻留可见窗口的块。**10 亿逻辑点**(1 万块、常驻 3 块)初始化 3ms、堆 2.7MB |
|
|
188
|
+
| 交给引擎 | `chart.createVirtualSource(id)` → `ICEVirtualLayer` | 列**不复制**直接喂给引擎虚拟子源:窗口裁剪/批量落墨/命中归引擎,白拿「命中即物化」、SVG 导出、对齐参考线;100 万点落墨 2.1ms/帧、命中 0.00ms |
|
|
184
189
|
| `pie` | `data: [{ name, value }]` | `innerRadius` 出环形,`roseType` 出玫瑰图;扇区可点图例隐藏 |
|
|
185
190
|
| `radar` | `radar.indicators` + `data: [数值...]` | 一个系列一个多边形,顶点命中 |
|
|
186
191
|
| `boxplot` | `data: [[min, Q1, median, Q3, max]]` 或一组原始观测值 | 恰好 5 个数按五数概括解释,其它长度自动算分位数;命中覆盖整条须 |
|
|
@@ -555,7 +560,7 @@ npm run examples:serve # http://localhost:5177
|
|
|
555
560
|
|
|
556
561
|
示例页面覆盖:基础折线 / 面积、分组与堆叠柱形、多 y 轴叠加、饼图 / 环形图 / 玫瑰图、雷达图、
|
|
557
562
|
热力图、桑基图、交互总览(框选 + 多选 + 键盘 + 事件日志)、时间轴 + dataZoom 滑块、
|
|
558
|
-
大数据量(5
|
|
563
|
+
大数据量(5 万点降采样 / **100 万点列存虚拟化:散点 + 折线**)、无障碍、跨图联动、迷你 MATLAB,以及 **5 个深色大屏**
|
|
559
564
|
(运营 / 设备 / 能源 / 物流 / 函数实验)。
|
|
560
565
|
|
|
561
566
|
五个大屏共用同一套脚手架(`examples/assets/dash-kit.js`:12 列栅格 + 面板组件 + 数据流主循环),
|
|
@@ -653,12 +658,14 @@ node scripts/audit-space.mjs # 104 张示例图:直角坐标占宽 ≥
|
|
|
653
658
|
## 路线图
|
|
654
659
|
|
|
655
660
|
已落地:极坐标(饼图 / 玫瑰图)、雷达图、多 y 轴、dataZoom 滑块、LTTB 降采样与二分命中、
|
|
656
|
-
|
|
661
|
+
**列存(虚拟)系列**(百万级散点,`virtual: true`)、无障碍(数据表镜像 + 播报)、
|
|
662
|
+
热力图、桑基图、标注(目标线 / 异常点 / 目标区间)。
|
|
657
663
|
|
|
658
664
|
后续候选:
|
|
659
665
|
|
|
660
666
|
- 桑基节点拖拽重排与折叠(布局已与渲染解耦,扩展成本低)
|
|
661
|
-
- 数据 append
|
|
667
|
+
- 数据 append 的增量绘制(当前是全量重建像素缓存;列存 + 环形缓冲是它的落地路径)
|
|
668
|
+
- 把列存推广到折线 / 面积与热力图(模板与边界见 `docs/column-store-virtual-series.md`)
|
|
662
669
|
- y 轴方向的 dataZoom 滑块(`setAxisDomain` 已可用,缺 UI)
|
|
663
670
|
- 标注的第二梯队:树图 / 日历热力(层级与时间热力的标配)、趋势线与误差棒(按需;
|
|
664
671
|
冷门形态走自定义系列注册口)
|