fybdp-d3-kg
Version:
Knowledge Graph using React and D3.js
63 lines (62 loc) • 2.59 kB
TypeScript
import React, { Component, ReactElement } from 'react';
import { LinearAxisProps, LinearAxis } from '../common/Axis';
import { BarSeries, BarSeriesProps } from './BarSeries';
import { ChartDataShape } from '../common/data';
import { GridlineSeries, GridlineSeriesProps } from '../common/Gridline';
import { ChartBrushProps, ChartBrush } from '../common/Brush';
import { ChartContainerChildProps, ChartProps } from '../common/containers/ChartContainer';
export interface BarChartProps extends ChartProps {
/**
* Data the chart will receive to render.
*/
data: ChartDataShape[];
/**
* The series component that renders the bar components.
*/
series: ReactElement<BarSeriesProps, typeof BarSeries>;
/**
* The linear axis component for the Y Axis of the chart.
*/
yAxis: ReactElement<LinearAxisProps, typeof LinearAxis>;
/**
* The linear axis component for the X Axis of the chart.
*/
xAxis: ReactElement<LinearAxisProps, typeof LinearAxis>;
/**
* The chart's background gridlines component.
*/
gridlines: ReactElement<GridlineSeriesProps, typeof GridlineSeries> | null;
/**
* The chart's brush component.
*/
brush: ReactElement<ChartBrushProps, typeof ChartBrush> | null;
/**
* Any secondary axis components. Useful for multi-axis charts.
*/
secondaryAxis?: ReactElement<LinearAxisProps, typeof LinearAxis>[];
}
export declare class BarChart extends Component<BarChartProps> {
static defaultProps: Partial<BarChartProps>;
getScalesAndData(chartHeight: number, chartWidth: number): {
xScale: any;
xScale1: any;
yScale: any;
data: any;
};
getKeyAxis(): React.ReactElement<LinearAxisProps, typeof LinearAxis>;
getIsDiverging(): boolean;
getIsVertical(): boolean;
getBinnedData(data: any, xScale: any, yScale: any): any;
getMarimekkoGroupScales(data: any, axis: any, width: number): {
keyScale: import("d3-scale").ScaleLinear<number, number>;
groupScale: any;
};
getMultiGroupScales(data: any, height: number, width: number): {
groupScale: import("d3-scale").ScaleBand<string>;
keyScale: import("d3-scale").ScaleBand<string>;
};
getKeyScale(data: any, axis: any, isMultiSeries: boolean, width: number): any;
getValueScale(data: any, axis: any, isMultiSeries: boolean, height: number): any;
renderChart(containerProps: ChartContainerChildProps): JSX.Element;
render(): JSX.Element;
}