waveform-analysis 0.1.46 → 0.1.48

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 CHANGED
@@ -96,37 +96,37 @@ const data = ref<WaveformData>({
96
96
 
97
97
  ### Props
98
98
 
99
- | Prop | 类型 | 默认值 | 说明 |
100
- | --------------------------------- | ------------------------------------------- | ------------------------------------------------------- | --------------------------------------------- |
101
- | `data` | `WaveformData` | 必填 | 波形数据 |
102
- | `displayMode` | `'independent' \| 'separated' \| 'compact'` | `'independent'` | 图框布局 |
103
- | `overlayMode` | `'single-axis' \| 'multi-axis'` | `'single-axis'` | 叠加曲线的 Y 轴模式 |
104
- | `timeUnit` | `'s' \| 'ms'` | `'ms'` | 坐标轴和 tooltip 展示单位 |
105
- | `xLabel` / `yLabel` | `string` | `时间(timeUnit)` / `'幅值'` | 坐标轴名称 |
106
- | `lineColor` | `string` | `'#0960bd'` | 单波形默认颜色 |
107
- | `width` / `height` | `number` | 自适应 | 组件总尺寸,单位为 CSS 像素 |
108
- | `zoomable` / `showTooltip` | `boolean` | `true` / `true` | 缩放和数值 tooltip 开关 |
109
- | `pannable` | `boolean` | `false` | 空格拖拽平移开关 |
110
- | `minZoomSpan` | `number` | 未设置 | 最小缩放跨度,使用原始 X 数据单位 |
111
- | `minVisiblePoints` | `number` | `0` | 缩放后至少保留的不同 X 坐标数 |
112
- | `initialXDomain` | `[number, number]` | 未设置 | 所有图框的初始 X 范围(可超出数据,空白显示) |
113
- | `initialXDomains` | `Record<string, [number, number]>` | 未设置 | 按 track/series ID 配置初始范围(可超出数据) |
114
- | `xDomainStrategy` | `WaveformXDomainStrategy` | `{ type: 'data' }` | 自动 X 轴视口范围策略 |
115
- | `yDomain` | `[number, number]` | 未设置 | 所有波形的固定 Y 轴范围 |
116
- | `yDomains` | `Record<string, [number, number]>` | 未设置 | 按 track/series ID 配置固定范围 |
99
+ | Prop | 类型 | 默认值 | 说明 |
100
+ | --------------------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------------- |
101
+ | `data` | `WaveformData` | 必填 | 波形数据 |
102
+ | `displayMode` | `'independent' \| 'separated' \| 'compact'` | `'independent'` | 图框布局 |
103
+ | `overlayMode` | `'single-axis' \| 'multi-axis'` | `'single-axis'` | 叠加曲线的 Y 轴模式 |
104
+ | `timeUnit` | `'s' \| 'ms'` | `'ms'` | 坐标轴和 tooltip 展示单位 |
105
+ | `xLabel` / `yLabel` | `string` | `时间(timeUnit)` / `'幅值'` | 坐标轴名称 |
106
+ | `lineColor` | `string` | `'#0960bd'` | 单波形默认颜色 |
107
+ | `width` / `height` | `number` | 自适应 | 组件总尺寸,单位为 CSS 像素 |
108
+ | `zoomable` / `showTooltip` | `boolean` | `true` / `true` | 缩放和数值 tooltip 开关 |
109
+ | `pannable` | `boolean` | `false` | 空格拖拽平移开关 |
110
+ | `minZoomSpan` | `number` | 未设置 | 最小缩放跨度,使用原始 X 数据单位 |
111
+ | `minVisiblePoints` | `number` | `0` | 缩放后至少保留的不同 X 坐标数 |
112
+ | `initialXDomain` | `[number, number]` | 未设置 | 所有图框的初始 X 范围(可超出数据,空白显示) |
113
+ | `initialXDomains` | `Record<string, [number, number]>` | 未设置 | 按 track/series ID 配置初始范围(可超出数据) |
114
+ | `xDomainStrategy` | `WaveformXDomainStrategy` | `{ type: 'data' }` | 自动 X 轴视口范围策略 |
115
+ | `yDomain` | `[number, number]` | 未设置 | 所有波形的固定 Y 轴范围 |
116
+ | `yDomains` | `Record<string, [number, number]>` | 未设置 | 按 track/series ID 配置固定范围 |
117
117
  | `grid` | `WaveformGridOptions` | `{ rowCount: 2, columnCount: 1, showPagination: true, fillIncompleteLastRow: false }` | 网格和分页 |
118
- | `axes` | `WaveformAxesOptions` | 轴线均显示 | X/Y 轴基线、Y 轴分割数与 X 轴 label 格式化 |
119
- | `rendering` | `WaveformRenderingOptions` | `{}` | 降采样与点/误差棒间距 |
120
- | `title` / `legend` / `frameStyle` | 对应公开类型 | 未设置 | 标题、图例和图框样式 |
121
- | `frameNumber` | `string \| number` | 未设置 | 图框水印内容 |
122
- | `zeroLine` | `WaveformZeroLineOptions` | `{ visible: false }` | 零值参考线显隐与样式 |
123
- | `cleanView` | `boolean` | `false` | 保留波形、图框和刻度的净图模式 |
124
- | `presentationMode` | `boolean` | `false` | 禁用绘图区交互的展示模式 |
125
- | `annotations` | `WaveformAnnotation[]` | `[]` | 受控标注数据 |
126
- | `annotationsVisible` | `boolean` | `true` | 标注图层显隐 |
127
- | `interactionMode` | `'zoom' \| 'annotation'` | `'zoom'` | 左键交互模式 |
128
- | `hiddenSeriesIds` | `string[]` | 未设置 | 受控隐藏系列 ID |
129
- | `defaultHiddenSeriesIds` | `string[]` | `[]` | 非受控模式的初始隐藏系列 |
118
+ | `axes` | `WaveformAxesOptions` | 轴线均显示 | X/Y 轴基线、Y 轴分割数与 X 轴 label 格式化 |
119
+ | `rendering` | `WaveformRenderingOptions` | `{}` | 降采样与点/误差棒间距 |
120
+ | `title` / `legend` / `frameStyle` | 对应公开类型 | 未设置 | 标题、图例和图框样式 |
121
+ | `frameNumber` | `string \| number` | 未设置 | 图框水印内容 |
122
+ | `zeroLine` | `WaveformZeroLineOptions` | `{ visible: false }` | 零值参考线显隐与样式 |
123
+ | `cleanView` | `boolean` | `false` | 保留波形、图框和刻度的净图模式 |
124
+ | `presentationMode` | `boolean` | `false` | 禁用绘图区交互的展示模式 |
125
+ | `annotations` | `WaveformAnnotation[]` | `[]` | 受控标注数据 |
126
+ | `annotationsVisible` | `boolean` | `true` | 标注图层显隐 |
127
+ | `interactionMode` | `'zoom' \| 'annotation'` | `'zoom'` | 左键交互模式 |
128
+ | `hiddenSeriesIds` | `string[]` | 未设置 | 受控隐藏系列 ID |
129
+ | `defaultHiddenSeriesIds` | `string[]` | `[]` | 非受控模式的初始隐藏系列 |
130
130
 
131
131
  所有公开类型均可从包入口导入,例如 `WaveformData`、`WaveformSeries`、
132
132
  `WaveformAnnotation`、`WaveformLineStyle`、`WaveformRenderingOptions`、
@@ -169,6 +169,13 @@ const chartData: WaveformData = {
169
169
  }
170
170
  ```
171
171
 
172
+ 需要让图框在合并或暂时没有数据时仍保持位置和分页,可传入 `grid.trackOrder`。列表中的
173
+ `trackId` 会按给定顺序占用图框;没有对应系列的项显示为空图框,数据中未列出的轨道会追加在末尾:
174
+
175
+ ```vue
176
+ <WaveformChart :data="chartData" :grid="{ rowCount: 2, trackOrder: ['ch-a', 'ch-b', 'ch-c'] }" />
177
+ ```
178
+
172
179
  ## 波形图
173
180
 
174
181
  组件内置缩放、悬浮取点和 tooltip。调用方只需要提供波形数据:
@@ -227,6 +234,13 @@ Y 轴会独立计算:
227
234
  <WaveformChart :data="chartData" :axes="{ y: { splitNumber: 5 } }" />
228
235
  ```
229
236
 
237
+ 默认会将 Y 轴范围扩展为便于读取的等距刻度。传入 `nice: false` 可保持数据自动范围或
238
+ `yDomain` / `yDomains` 的原始端点:
239
+
240
+ ```vue
241
+ <WaveformChart :data="chartData" :axes="{ y: { nice: false } }" />
242
+ ```
243
+
230
244
  ### 缩放后按可视区间加载数据
231
245
 
232
246
  组件支持 Plotly 风格的矩形框选缩放:在 zoom 模式下按住鼠标左键拖拽,松开后同时缩放