@nova-ui/charts
Version:
Nova Charts is a library created to provide potential consumers with solutions for various data visualizations that conform with the Nova Design Language. It's designed to solve common patterns identified by UX designers, but also be very flexible so that
34 lines (33 loc) • 1.76 kB
TypeScript
import { Arc, DefaultArcObject } from "d3-shape";
import { Subject } from "rxjs";
import { Renderer } from "../../core/common/renderer";
import { Scales } from "../../core/common/scales/types";
import { IDataSeries, IPosition, IRadialRendererConfig, IRendererEventPayload } from "../../core/common/types";
import { IRenderSeries } from "../types";
import { IRadialAccessors } from "./accessors/radial-accessors";
/**
* Default configuration for Radial Renderer
*/
export declare const DEFAULT_RADIAL_RENDERER_CONFIG: IRadialRendererConfig;
/**
* Radial renderer is a generic renderer that is able to draw pie and donut charts
*/
export declare class RadialRenderer extends Renderer<IRadialAccessors> {
config: IRadialRendererConfig;
protected segmentWidth?: number;
/**
* Creates an instance of RadialRenderer.
* @param {IRadialRendererConfig} [config]
* Renderer configuration object. Defaults to `DEFAULT_RADIAL_RENDERER_CONFIG` constant value.
*/
constructor(config?: IRadialRendererConfig);
/** See {@link Renderer#draw} */
draw(renderSeries: IRenderSeries<IRadialAccessors>, rendererSubject: Subject<IRendererEventPayload>): void;
/** See {@link Renderer#getDataPointPosition} */
getDataPointPosition(dataSeries: IDataSeries<IRadialAccessors>, index: number, scales: Scales): IPosition | undefined;
getInnerRadius(range: number[], index: number): number;
getOuterRadius(range: [number, number], index: number): number;
protected getArc(range: [number, number], generatedArc: Arc<any, DefaultArcObject>, index: number): Arc<any, DefaultArcObject>;
protected getSegmentWidth(renderSeries: IRenderSeries<IRadialAccessors>): number | undefined;
private emitDataPointHighlight;
}