LineChart API
用于加载数据、流式传输样本、控制视口和更新外观的 LineChart 方法。
import { LineChart } from "@sixtyfold/line";使用上方所示的公开入口。仅类型导入不会保留在应用 JavaScript 中。
ChartOverlayError
当一个或多个声明式覆盖源无法应用时报告的错误。
导入 @sixtyfold/line·类
class ChartOverlayError extends Error| 成员 | 定义 | 描述 |
|---|---|---|
cause? | Error | undefined | 图表覆盖错误的原因。 |
message | string | 消息文本。 |
name | "ChartOverlayError" | 此图表覆盖层错误的显示名称。 |
sources | readonly string[] | 图表覆盖层错误的来源。 |
stack? | string | undefined | 堆栈文本。 |
ChartRendererError
当图表渲染器在启动或后续使用期间失败时报告的错误。
导入 @sixtyfold/line·类
class ChartRendererError extends Error| 成员 | 定义 | 描述 |
|---|---|---|
cause? | Error | undefined | 导致图表渲染器错误的原因。 |
message | string | 消息文本。 |
name | "ChartRendererError" | 此图表渲染器错误的显示名称。 |
phase | RendererFailurePhase | 图表渲染器错误的阶段。 |
stack? | string | undefined | 调用栈文本。 |
LineChart
用于线图、阶梯图、范围图、散点图、柱状图和堆叠面积序列的命令式浏览器图表。
导入 @sixtyfold/line·类
class LineChart| 成员 | 定义 | 描述 |
|---|---|---|
add | (timestamp: number, values: number[]) => void | 为每个已配置序列排队一个有限时间戳和一个值。入队前会复制这些值,供调用者重用标量数组;有效的标量和批量调用会保留其顺序。 |
add | (timestamps: Float64Array, valuesBySeries: Float64Array[]) => void | 在刷新已排队的标量样本之前,验证已对齐的 Float64Array 时间戳和序列列是否为有限时间戳。验证失败时会保留队列和调用者缓冲区;在有效的 Worker 模式追加中会传输并分离缓冲区。抛出:若列格式错误或任何时间戳为非有限值,则抛出 Error。 |
batch | (fn: () => void) => void | 将同步的外观与视口更改合并为一次更新。嵌套批处理会合并;数据加载仍立即执行。 |
destroy | () => void | 释放图表及其所拥有的资源。 |
get | () => DeepReadonly<LineAppearanceOptions> | 返回可变外观子集的只读快照。 |
get | () => DeepReadonly<LineChartOptions> | 返回所有选项(构造时选项 + 当前外观)的完整规范化只读快照。 |
get | () => "worker" | "main" | 返回已解析的渲染模式(“Worker”或“主线程”)。 |
get | () => boolean[] | 返回系列的可见性。 |
get | () => Viewport | 返回当前视口的快照。 |
initialize | () => Promise<void> | 等待渲染器准备好接收数据和运行时命令。 在构造时初始化监视器在 Worker 或主线程回退未在配置的间隔内就绪时,会用 ChartRendererError 拒绝该 promise。 应用程序应在安装其第一个数据集之前 await 此方法。 |
init | (seriesCount: number, maxPoints?: number) => void | 使用正整数序列计数和容量分配固定容量的流缓冲区。重置来自先前流的已排队样本并取消其挂起的视口动画。 |
reset | (options?: { animated?: boolean; }) => void | 将视口重置为完整数据范围。 |
resize | () => void | 使渲染器与画布尺寸同步。 |
set | (data: TimeSeriesData, options?: LineDataUpdateOptions) => number | 加载一个序列,并将其 typed array 的所有权交给渲染器。Worker 模式会转移并分离缓冲区;主线程模式下,渲染器保留数组引用。返回数据代数。 |
set | (messages: false | KeyboardAnnouncementMessages) => void | 在运行时替换或禁用本地化的键盘操作公告。现有的待处理公告将被取消。 |
set | (labels: ChartLabels) => void | 在运行时更新图表标签。与现有标签合并(语义同 updateAppearance)。抛出:对格式错误的标签或稀疏/非对象的 custom 条目抛出 TypeError。 |
set | (patch: LineLODOptions) => void | 对模式、密度、重基比率或网格量化应用部分更新,而无需重新创建图表或重建其层次结构。 |
set | (data: MultiSeriesData, options?: LineDataUpdateOptions) => number | 加载共享 X 列的对齐序列,并将其 typed array 的所有权交给渲染器。Worker 模式会转移并分离缓冲区;主线程模式下,渲染器保留数组引用。返回数据代数。 |
set | (overlay: OverlayOptions) => Promise<void> | 在运行时更新声明式覆盖原语。有效的原语和成功解码的图像即使在其他图像失败时也会被安装。如果所有请求项均失败,则保留先前渲染的覆盖。分辨率和渲染器投递失败将以 ChartOverlayError 拒绝;当应用还需要异步通知时,请注册 setOverlayErrorCallback。在延迟渲染器就绪前调用时,此 promise 包含等待就绪。被取代的更新和图表销毁属于常规取消,并会在不安装的情况下解析。 |
set | (callback: OverlayErrorCallback | null) => void | 注册一个回调以处理非致命的覆盖解析或投递失败。成功的覆盖项仍会被安装。匹配的 setOverlay promise 也会以相同错误被拒绝。 |
set | (callback: RendererErrorCallback | null) => void | 注册一次性渲染器失败回调。初始化或运行时失败时在拆卸前调用一次。若无回调,错误将使用 console.error。传入 null 可取消该回调;调用 destroy 不会触发它。 |
set | (callback: ((event: SeriesVisibilityChangeEvent) => void) | null) => void | 接收通过 API 或交互式图例所做的可见性更改。 |
set | (index: number, visible: boolean) => void | 按索引显示或隐藏某一系列。 |
set | (callback: ((stats: LineChartStats) => void) | null, options?: LineChartStatsOptions) => void | 启用渲染器统计并接收节流快照。传入 null 可将其禁用。 |
set | (viewport: Partial<Viewport>, options?: { animated?: boolean; }) => void | 以编程方式设置视口范围。仅需提供 xMin 和/或 xMax;省略的字段将保持当前值。 |
set | (indices: number[]) => void | 仅显示列出的系列索引。 |
toggle | (index: number) => void | 切换系列可见性。 |
update | (patch: DeepPartial<LineAppearanceOptions>) => void | 在运行时修补可变外观选项。 抛出:TypeError(用于格式错误的标签或稀疏/非对象的 custom 条目)。 |
update | (index: number, patch: DeepPartial<SeriesAppearanceOptions>) => void | 按索引修补单个系列的视觉配置。 |