UNPKG

hilbert-chart

Version:

A hilbert space-filling curve D3 chart for representing one-dimensional lengths on a two-dimensional space.

61 lines (49 loc) 2.13 kB
interface ConfigOptions { useCanvas?: boolean; } type Accessor<In, Out> = Out | string | ((obj: In) => Out); type RangeAccessor<T> = Accessor<Range, T>; interface Range { start: number; length: number; } type NumFormatter = (num: number) => string; declare class HilbertChart { constructor(element: HTMLElement, configOptions?: ConfigOptions); width(): number; width(width: number): HilbertChart; margin(): number; margin(px: number): HilbertChart; hilbertOrder(): number; hilbertOrder(height: number): HilbertChart; data(): Range[]; data(data: Range[]): HilbertChart; rangeLabel(): RangeAccessor<string>; rangeLabel(textAccessor: RangeAccessor<string>): HilbertChart; rangeLabelColor(): RangeAccessor<string>; rangeLabelColor(colorAccessor: RangeAccessor<string>): HilbertChart; rangeColor(): RangeAccessor<string>; rangeColor(colorAccessor: RangeAccessor<string>): HilbertChart; rangePadding(): RangeAccessor<string>; rangePadding(paddingAccessor: RangeAccessor<string>): HilbertChart; rangePaddingAbsolute(): RangeAccessor<string>; rangePaddingAbsolute(paddingAccessor: RangeAccessor<string>): HilbertChart; valFormatter(): NumFormatter; valFormatter(formatter: NumFormatter): HilbertChart; focusOn(pos:number, length: number, ms?: number): HilbertChart; showValTooltip(): boolean; showValTooltip(show: boolean): HilbertChart; showRangeTooltip(): boolean; showRangeTooltip(show: boolean): HilbertChart; rangeTooltipContent(): RangeAccessor<string>; rangeTooltipContent(contentAccessor: RangeAccessor<string>): HilbertChart; enableZoom(): boolean; enableZoom(enable: boolean): HilbertChart; onRangeClick(cb: (range: Range) => void): HilbertChart; onRangeHover(cb: (range: Range | null) => void): HilbertChart; onPointerMove(cb: (value: number, event: MouseEvent) => void): HilbertChart; onZoom(callback: (transform: {k: number, x: number, y: number}) => void): HilbertChart; onZoomEnd(callback: (transform: {k: number, x: number, y: number}) => void): HilbertChart; } export { HilbertChart as default }; export type { ConfigOptions, Range };