survey-analytics
Version:
SurveyJS analytics Library.
70 lines (69 loc) • 2.5 kB
TypeScript
import { ItemValue, Question } from "survey-core";
import { SelectBase } from "./selectBase";
export declare class PivotModel extends SelectBase {
private questions;
private isRoot;
protected valueType: "enum" | "date" | "number";
private _cachedValues;
private _continuousData;
private _cachedIntervals;
private _intervalPrecision;
private axisXSelector;
axisXQuestionName: string;
private axisYSelectors;
axisYQuestionNames: Array<string>;
private questionsY;
static IntervalsCount: number;
static UseIntervalsFrom: number;
constructor(questions: Array<Question>, data: Array<{
[index: string]: any;
}>, options?: Object, name?: string, isRoot?: boolean);
private createYSelecterGenerator;
setAxisQuestions(...axisQuestionNames: string[]): void;
onAxisYSelectorChanged(index: number, value: any): void;
protected updateQuestionsSelection(): void;
private createAxisYSelector;
protected setChartType(chartType: string): void;
private isXYChart;
getQuestionValueType(question: Question): "enum" | "date" | "number";
private setupPivot;
private reset;
getContinuousValue(value: any): number;
getString(value: number): string;
private toPrecision;
getSelectedItemByText(itemText: string): ItemValue;
/**
* Updates visualizer data.
*/
updateData(data: Array<{
[index: string]: any;
}>): void;
protected onDataChanged(): void;
protected getContinuousValues(): {
original: any;
continuous: number;
row: any;
}[];
protected isSupportAnswersOrder(): boolean;
protected isSupportMissingAnswers(): boolean;
protected get needUseRateValues(): boolean;
getSeriesValues(): Array<string>;
getSeriesLabels(): Array<string>;
getValues(): Array<any>;
getLabels(): Array<string>;
get hasCustomIntervals(): boolean;
get intervals(): any;
convertFromExternalData(externalCalculatedData: any): any[];
getSeriesValueIndexes(): {
[index: string]: number;
};
updateStatisticsSeriesValue(statistics: Array<Array<number>>, dataRow: {
[index: string]: any;
}, valueIndex: number, seriesValueIndexes: {
[index: string]: number;
}): void;
protected getCalculatedValuesCore(): Array<any>;
getValueType(): "enum" | "date" | "number";
protected isSupportSoftUpdateContent(): boolean;
protected renderToolbar(container: HTMLElement): void;
}