@bokeh/bokehjs
Version:
Interactive, novel data visualization
128 lines • 5.91 kB
TypeScript
import { GuideRenderer, GuideRendererView } from "../renderers/guide_renderer";
import { Ticker } from "../tickers/ticker";
import { TickFormatter } from "../formatters/tick_formatter";
import { LabelingPolicy } from "../policies/labeling";
import type { Range } from "../ranges/range";
import type * as visuals from "../../core/visuals";
import * as mixins from "../../core/property_mixins";
import type * as p from "../../core/properties";
import { Align, Face, LabelOrientation, AxisLabelStandoffMode } from "../../core/enums";
import type { Size } from "../../core/layout";
import type { Orient, Normal, Dimension } from "../../core/layout/side_panel";
import { SidePanel } from "../../core/layout/side_panel";
import type { Context2d } from "../../core/util/canvas";
import { GraphicsBoxes } from "../../core/graphics";
import type { Factor } from "../ranges/factor_range";
import type { BaseTextView } from "../text/base_text";
import { BaseText } from "../text/base_text";
import type { View } from "../../core/build_views";
import { BBox } from "../../core/util/bbox";
export declare const LabelOverrides: import("../../core/kinds").Kinds.Or<[import("core/types").Dict<string | BaseText>, Map<string | number, string | BaseText>]>;
export type LabelOverrides = typeof LabelOverrides["__type__"];
export type Extents = {
tick: number;
tick_labels: number[];
tick_label: number;
axis_label: number;
};
export type Coords = [number[], number[]];
export type TickCoords = {
major: Coords;
minor: Coords;
};
export declare abstract class AxisView extends GuideRendererView {
model: Axis;
visuals: Axis.Visuals;
readonly RangeType: Range;
get panel(): SidePanel;
set panel(panel: SidePanel);
_axis_label_view: BaseTextView | null;
_major_label_views: Map<string | number, BaseTextView>;
get bbox(): BBox;
children_views(): View[];
lazy_initialize(): Promise<void>;
protected _init_axis_label(): Promise<void>;
protected _init_major_labels(): Promise<void>;
update_layout(): void;
get_size(): Size;
get is_renderable(): boolean;
protected abstract _hit_value(sx: number, sy: number): number | Factor | null;
interactive_hit(sx: number, sy: number): boolean;
on_hit(sx: number, sy: number): boolean;
protected _paint(ctx: Context2d): void;
connect_signals(): void;
get needs_clip(): boolean;
protected _draw_background(ctx: Context2d, _extents: Extents): void;
protected _draw_rule(ctx: Context2d, _extents: Extents): void;
protected _draw_major_ticks(ctx: Context2d, _extents: Extents, tick_coords: TickCoords): void;
protected _draw_minor_ticks(ctx: Context2d, _extents: Extents, tick_coords: TickCoords): void;
protected _draw_major_labels(ctx: Context2d, extents: Extents, tick_coords: TickCoords): void;
protected _axis_label_extent(): number;
protected _draw_axis_label(ctx: Context2d, extents: Extents, _tick_coords: TickCoords): void;
protected _draw_ticks(ctx: Context2d, coords: Coords, tin: number, tout: number, visuals: visuals.Line): void;
protected _draw_oriented_labels(ctx: Context2d, labels: GraphicsBoxes, coords: Coords, orient: Orient | number, standoff: number, visuals: visuals.Text): void;
_tick_extent(): number;
protected _tick_label_extents(): number[];
get extents(): Extents;
protected _oriented_labels_extent(labels: GraphicsBoxes, orient: Orient | number, standoff: number, visuals: visuals.Text): number;
get normals(): [Normal, Normal];
get dimension(): Dimension;
compute_labels(ticks: number[]): GraphicsBoxes;
scoords(coords: Coords): Coords;
get ranges(): [typeof this["RangeType"], typeof this["RangeType"]];
get computed_bounds(): [number, number];
get rule_coords(): Coords;
get rule_scoords(): {
sx0: number;
sy0: number;
sx1: number;
sy1: number;
};
get tick_coords(): TickCoords;
get loc(): number;
get face(): Face;
remove(): void;
has_finished(): boolean;
}
export declare namespace Axis {
type Attrs = p.AttrsOf<Props>;
type Props = GuideRenderer.Props & {
dimension: p.Property<0 | 1 | "auto">;
face: p.Property<Face | "auto">;
bounds: p.Property<[number, number] | "auto">;
ticker: p.Property<Ticker>;
formatter: p.Property<TickFormatter>;
axis_label: p.Property<string | BaseText | null>;
axis_label_standoff: p.Property<number>;
axis_label_standoff_mode: p.Property<AxisLabelStandoffMode>;
axis_label_orientation: p.Property<LabelOrientation | number>;
axis_label_align: p.Property<Align>;
major_label_standoff: p.Property<number>;
major_label_orientation: p.Property<LabelOrientation | number>;
major_label_overrides: p.Property<LabelOverrides>;
major_label_policy: p.Property<LabelingPolicy>;
major_tick_in: p.Property<number>;
major_tick_out: p.Property<number>;
minor_tick_in: p.Property<number>;
minor_tick_out: p.Property<number>;
fixed_location: p.Property<number | Factor | null>;
} & Mixins;
type Mixins = mixins.AxisLine & mixins.MajorTickLine & mixins.MinorTickLine & mixins.MajorLabelText & mixins.AxisLabelText & mixins.BackgroundFill & mixins.BackgroundHatch;
type Visuals = GuideRenderer.Visuals & {
axis_line: visuals.Line;
major_tick_line: visuals.Line;
minor_tick_line: visuals.Line;
major_label_text: visuals.Text;
axis_label_text: visuals.Text;
background_fill: visuals.Fill;
background_hatch: visuals.Hatch;
};
}
export interface Axis extends Axis.Attrs {
}
export declare abstract class Axis extends GuideRenderer {
properties: Axis.Props;
__view_type__: AxisView;
constructor(attrs?: Partial<Axis.Attrs>);
}
//# sourceMappingURL=axis.d.ts.map