waveform-analysis 0.1.32 → 0.1.36
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 +28 -3
- package/dist/index.cjs +1 -1
- package/dist/index.js +426 -411
- package/dist/style.css +1 -1
- package/dist/types/components/WaveformChart.vue.d.ts +1 -0
- package/dist/types/components/core/trackLayoutBuilder.d.ts +2 -1
- package/dist/types/components/core/types.d.ts +2 -0
- package/dist/types/components/core/useWaveformChartController.d.ts +1 -0
- package/dist/types/components/core/waveformChartTypes.d.ts +3 -2
- package/dist/types/components/core/xDomain.d.ts +3 -0
- package/dist/types/components/data/types.d.ts +1 -1
- package/dist/types/components/interaction/WaveformTooltip.vue.d.ts +1 -0
- package/dist/types/components/waveform.d.ts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/types/chart.d.ts +10 -0
- package/dist/types/types/data.d.ts +3 -0
- package/dist/types/types/index.d.ts +1 -1
- package/package.json +1 -1
- package/src/components/WaveformChart.vue +1 -0
- package/src/components/core/trackLayoutBuilder.ts +19 -7
- package/src/components/core/types.ts +2 -0
- package/src/components/core/useWaveformChartLifecycle.ts +1 -0
- package/src/components/core/useWaveformLayout.ts +19 -6
- package/src/components/core/waveformChartTypes.ts +3 -0
- package/src/components/core/xDomain.test.ts +28 -0
- package/src/components/core/xDomain.ts +25 -0
- package/src/components/data/types.ts +1 -0
- package/src/components/interaction/WaveformTooltip.test.ts +17 -9
- package/src/components/interaction/WaveformTooltip.vue +41 -45
- package/src/components/interaction/useWaveformHover.ts +1 -0
- package/src/components/waveform.ts +1 -0
- package/src/components/waveformChartCases/compactAndSharedHover.test.ts +4 -4
- package/src/components/waveformChartCases/dataAndHoverPerformance.test.ts +2 -2
- package/src/components/waveformChartCases/viewportReset.test.ts +35 -0
- package/src/components/waveformChartCases/xDomainStrategy.test.ts +96 -0
- package/src/core/data.test.ts +22 -0
- package/src/core/data.ts +1 -0
- package/src/data/simulatedWaveforms.test.ts +1 -0
- package/src/data/simulatedWaveforms.ts +7 -1
- package/src/index.ts +1 -0
- package/src/types/chart.ts +11 -0
- package/src/types/data.ts +3 -0
- package/src/types/index.ts +1 -0
- package/src/views/FixedYDomainDemo.vue +2 -0
package/README.md
CHANGED
|
@@ -111,6 +111,7 @@ const data = ref<WaveformData>({
|
|
|
111
111
|
| `minVisiblePoints` | `number` | `0` | 缩放后至少保留的不同 X 坐标数 |
|
|
112
112
|
| `initialXDomain` | `[number, number]` | 未设置 | 所有图框的初始 X 范围 |
|
|
113
113
|
| `initialXDomains` | `Record<string, [number, number]>` | 未设置 | 按 track/series ID 配置初始范围 |
|
|
114
|
+
| `xDomainStrategy` | `WaveformXDomainStrategy` | `{ type: 'data' }` | 自动 X 轴视口范围策略 |
|
|
114
115
|
| `yDomain` | `[number, number]` | 未设置 | 所有波形的固定 Y 轴范围 |
|
|
115
116
|
| `yDomains` | `Record<string, [number, number]>` | 未设置 | 按 track/series ID 配置固定范围 |
|
|
116
117
|
| `grid` | `WaveformGridOptions` | `{ rowCount: 2, columnCount: 1, showPagination: true }` | 网格和分页 |
|
|
@@ -129,7 +130,7 @@ const data = ref<WaveformData>({
|
|
|
129
130
|
|
|
130
131
|
所有公开类型均可从包入口导入,例如 `WaveformData`、`WaveformSeries`、
|
|
131
132
|
`WaveformAnnotation`、`WaveformLineStyle`、`WaveformRenderingOptions`、
|
|
132
|
-
`WaveformAxesOptions`、`WaveformXAxisLabelFormatter`、`WaveformZeroLineOptions`、
|
|
133
|
+
`WaveformAxesOptions`、`WaveformXAxisLabelFormatter`、`WaveformXDomainStrategy`、`WaveformZeroLineOptions`、
|
|
133
134
|
`WaveformGridOptions` 和 `WaveformGridTrackLines`。
|
|
134
135
|
|
|
135
136
|
### 数据结构
|
|
@@ -162,8 +163,8 @@ const points: WaveformData = {
|
|
|
162
163
|
const chartData: WaveformData = {
|
|
163
164
|
kind: 'series',
|
|
164
165
|
series: [
|
|
165
|
-
{ id: 'ch-a', name: '通道 A', trackId: 'group-1', data: samples },
|
|
166
|
-
{ id: 'ch-b', name: '通道 B', trackId: 'group-1', data: points },
|
|
166
|
+
{ id: 'ch-a', shotNo: '13300', name: '通道 A', trackId: 'group-1', data: samples },
|
|
167
|
+
{ id: 'ch-b', shotNo: '13300', name: '通道 B', trackId: 'group-1', data: points },
|
|
167
168
|
],
|
|
168
169
|
}
|
|
169
170
|
```
|
|
@@ -252,6 +253,26 @@ X 轴且包含多个轨道时使用按稳定 track ID 索引的 `yRanges`。平
|
|
|
252
253
|
重置组件内部缩放并触发 `zoom-reset`;调用方应在事件中取消区间请求并恢复首次完整数据。
|
|
253
254
|
外部重置按钮也可以通过模板引用调用组件公开的 `resetViewport()` 方法,然后执行相同的数据恢复逻辑。
|
|
254
255
|
|
|
256
|
+
没有显式配置初始范围时,可以通过 `xDomainStrategy` 将数据范围扩展为便于阅读的视口端点。
|
|
257
|
+
默认的 `{ type: 'data' }` 保持数据最小值和最大值不变;`type: 'nice'` 使用固定刻度数量计算
|
|
258
|
+
易读边界,且只扩展视口,不修改原始点位、tooltip、标注或缩放事件值:
|
|
259
|
+
|
|
260
|
+
```vue
|
|
261
|
+
<WaveformChart
|
|
262
|
+
:data="chartData"
|
|
263
|
+
:x-domain-strategy="{ type: 'nice', bounds: 'end', tickCount: 10, includeExplicit: true }"
|
|
264
|
+
/>
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
例如秒坐标数据范围为 `[0, 4.999999]` 且 `timeUnit='ms'` 时,上述配置会使用
|
|
268
|
+
`[0, 5]` 作为初始及重置视口,两端 label 显示 `0` 和 `5000`。`bounds: 'end'`
|
|
269
|
+
只扩展右端;默认的 `bounds: 'both'`
|
|
270
|
+
会同时扩展两端。`tickCount` 默认为 `10`,只参与边界计算,不随组件宽度变化。
|
|
271
|
+
`initialXDomains`、`initialXDomain` 的显式配置默认保持原值;仅当 `includeExplicit: true` 时
|
|
272
|
+
也应用 nice 扩展。独立模式在未配置显式范围时
|
|
273
|
+
按图框分别计算,共享 X 轴模式则合并所有可见图框后计算。所有范围仍使用原始秒坐标,
|
|
274
|
+
`timeUnit` 只影响显示。
|
|
275
|
+
|
|
255
276
|
独立坐标模式下,回填响应应只替换 `seriesIds` 对应的系列,并调用
|
|
256
277
|
`resetViewport(trackIndex)`;其他图框的数据和缩放状态应保持不变。独立模式下双击图框触发的
|
|
257
278
|
`zoom-reset` payload 会包含该图框的 `trackIndex` 和 `seriesIds`;共享 X 范围模式的 payload
|
|
@@ -260,6 +281,9 @@ X 轴且包含多个轨道时使用按稳定 track ID 索引的 `yRanges`。平
|
|
|
260
281
|
多通道数据应为每个 `WaveformSeries` 提供稳定的 `id`。内部时间坐标始终使用秒,
|
|
261
282
|
`timeUnit` 只控制坐标轴和 tooltip 的显示单位。
|
|
262
283
|
|
|
284
|
+
Tooltip 每个系列按 `炮号:通道 (x:值 y:值)` 格式显示。`WaveformSeries.shotNo` 为空或未提供时,
|
|
285
|
+
炮号显示为“未配置炮号”;Tooltip 不显示单位和误差附加文本。
|
|
286
|
+
|
|
263
287
|
### 线型、点型与误差棒
|
|
264
288
|
|
|
265
289
|
每条序列可以独立设置连线方式、数据点符号和误差棒:
|
|
@@ -267,6 +291,7 @@ X 轴且包含多个轨道时使用按稳定 track ID 索引的 `yRanges`。平
|
|
|
267
291
|
```ts
|
|
268
292
|
const series = {
|
|
269
293
|
id: 'temperature',
|
|
294
|
+
shotNo: '13300',
|
|
270
295
|
name: '温度',
|
|
271
296
|
lineType: 'step-end',
|
|
272
297
|
lineStyle: 'dashed',
|