UNPKG

igniteui-react-charts

Version:

Ignite UI React charting components for building rich data visualizations using TypeScript APIs.

807 lines (801 loc) 21.4 kB
import { HorizontalAlignment_$type } from "igniteui-react-core"; import { VerticalAlignment_$type } from "igniteui-react-core"; import { Visibility_$type } from "igniteui-react-core"; import { ValueAxisLabelLocation_$type } from "./ValueAxisLabelLocation"; import { AngleAxisLabelLocation_$type } from "./AngleAxisLabelLocation"; import { IgrDomainChart } from "./igr-domain-chart"; import { brushToString, stringToBrush, ensureBool, ensureEnum, arrayFindByName } from "igniteui-react-core"; /** * Represents a base class for domain charts with X/Y axes */ export class IgrRadialBaseChart extends IgrDomainChart { /** * @hidden */ get i() { return this._implementation; } constructor(props) { super(props); } /** * Gets or sets function which takes an context object and returns a formatted label for the X-axis. */ get angleAxisFormatLabel() { return this.i.aa0; } set angleAxisFormatLabel(v) { this.i.aa0 = v; } /** * Gets or sets function which takes a context object and returns a formatted label for the Y-axis. */ get valueAxisFormatLabel() { return this.i.aa1; } set valueAxisFormatLabel(v) { this.i.aa1 = v; } /** * Gets or sets the left margin of labels on the X-axis */ get angleAxisLabelLeftMargin() { return this.i.acf; } set angleAxisLabelLeftMargin(v) { this.i.acf = +v; } /** * Gets or sets the top margin of labels on the X-axis */ get angleAxisLabelTopMargin() { return this.i.ach; } set angleAxisLabelTopMargin(v) { this.i.ach = +v; } /** * Gets or sets the right margin of labels on the X-axis */ get angleAxisLabelRightMargin() { return this.i.acg; } set angleAxisLabelRightMargin(v) { this.i.acg = +v; } /** * Gets or sets the bottom margin of labels on the X-axis */ get angleAxisLabelBottomMargin() { return this.i.ace; } set angleAxisLabelBottomMargin(v) { this.i.ace = +v; } /** * Gets or sets the left margin of labels on the Y-axis */ get valueAxisLabelLeftMargin() { return this.i.ac2; } set valueAxisLabelLeftMargin(v) { this.i.ac2 = +v; } /** * Gets or sets the top margin of labels on the Y-axis */ get valueAxisLabelTopMargin() { return this.i.ac4; } set valueAxisLabelTopMargin(v) { this.i.ac4 = +v; } /** * Gets or sets the right margin of labels on the Y-axis */ get valueAxisLabelRightMargin() { return this.i.ac3; } set valueAxisLabelRightMargin(v) { this.i.ac3 = +v; } /** * Gets or sets the bottom margin of labels on the Y-axis */ get valueAxisLabelBottomMargin() { return this.i.ac1; } set valueAxisLabelBottomMargin(v) { this.i.ac1 = +v; } /** * Gets or sets color of labels on the X-axis */ get angleAxisLabelTextColor() { return brushToString(this.i.ahf); } set angleAxisLabelTextColor(v) { this.i.ahf = stringToBrush(v); } /** * Gets or sets color of labels on the Y-axis */ get valueAxisLabelTextColor() { return brushToString(this.i.ahm); } set valueAxisLabelTextColor(v) { this.i.ahm = stringToBrush(v); } /** * Gets the actual color of labels on the X-axis */ get actualAngleAxisLabelTextColor() { return brushToString(this.i.ahd); } set actualAngleAxisLabelTextColor(v) { this.i.ahd = stringToBrush(v); } /** * Gets the actual color of labels on the Y-axis */ get actualValueAxisLabelTextColor() { return brushToString(this.i.ahe); } set actualValueAxisLabelTextColor(v) { this.i.ahe = stringToBrush(v); } /** * Gets or sets the margin around a title on the X-axis */ get angleAxisTitleMargin() { return this.i.acs; } set angleAxisTitleMargin(v) { this.i.acs = +v; } /** * Gets or sets the margin around a title on the Y-axis */ get valueAxisTitleMargin() { return this.i.adf; } set valueAxisTitleMargin(v) { this.i.adf = +v; } /** * Gets or sets the left margin of a title on the X-axis */ get angleAxisTitleLeftMargin() { return this.i.acr; } set angleAxisTitleLeftMargin(v) { this.i.acr = +v; } /** * Gets or sets the left margin of a title on the Y-axis */ get valueAxisTitleLeftMargin() { return this.i.ade; } set valueAxisTitleLeftMargin(v) { this.i.ade = +v; } /** * Gets or sets the top margin of a title on the X-axis */ get angleAxisTitleTopMargin() { return this.i.acu; } set angleAxisTitleTopMargin(v) { this.i.acu = +v; } /** * Gets or sets the top margin of a title on the Y-axis */ get valueAxisTitleTopMargin() { return this.i.adh; } set valueAxisTitleTopMargin(v) { this.i.adh = +v; } /** * Gets or sets the right margin of a title on the X-axis */ get angleAxisTitleRightMargin() { return this.i.act; } set angleAxisTitleRightMargin(v) { this.i.act = +v; } /** * Gets or sets the right margin of a title on the Y-axis */ get valueAxisTitleRightMargin() { return this.i.adg; } set valueAxisTitleRightMargin(v) { this.i.adg = +v; } /** * Gets or sets the bottom margin of a title on the X-axis */ get angleAxisTitleBottomMargin() { return this.i.acq; } set angleAxisTitleBottomMargin(v) { this.i.acq = +v; } /** * Gets or sets the bottom margin of a title on the Y-axis */ get valueAxisTitleBottomMargin() { return this.i.add; } set valueAxisTitleBottomMargin(v) { this.i.add = +v; } /** * Gets or sets color of title on the X-axis */ get angleAxisTitleTextColor() { return brushToString(this.i.ahl); } set angleAxisTitleTextColor(v) { this.i.ahl = stringToBrush(v); } /** * Gets or sets color of title on the Y-axis */ get valueAxisTitleTextColor() { return brushToString(this.i.ahs); } set valueAxisTitleTextColor(v) { this.i.ahs = stringToBrush(v); } /** * Gets or sets CSS font property for labels on X-axis */ get angleAxisLabelTextStyle() { return this.i.aea; } set angleAxisLabelTextStyle(v) { this.i.aea = v; } /** * Gets or sets CSS font property for labels on Y-axis */ get valueAxisLabelTextStyle() { return this.i.afi; } set valueAxisLabelTextStyle(v) { this.i.afi = v; } /** * Gets or sets CSS font property for title on X-axis */ get angleAxisTitleTextStyle() { return this.i.ae0; } set angleAxisTitleTextStyle(v) { this.i.ae0 = v; } /** * Gets or sets CSS font property for title on Y-axis */ get valueAxisTitleTextStyle() { return this.i.af8; } set valueAxisTitleTextStyle(v) { this.i.af8 = v; } /** * Gets or sets the format for labels along the X-axis. */ get angleAxisLabel() { return this.i.adk; } set angleAxisLabel(v) { this.i.adk = v; } /** * Gets or sets the property or string from which the labels are derived. */ get valueAxisLabel() { return this.i.adl; } set valueAxisLabel(v) { this.i.adl = v; } /** * Gets or sets the color to apply to major gridlines along the X-axis. */ get angleAxisMajorStroke() { return brushToString(this.i.ahg); } set angleAxisMajorStroke(v) { this.i.ahg = stringToBrush(v); } /** * Gets or sets the color to apply to major gridlines along the Y-axis. */ get valueAxisMajorStroke() { return brushToString(this.i.ahn); } set valueAxisMajorStroke(v) { this.i.ahn = stringToBrush(v); } /** * Gets or sets the thickness to apply to major gridlines along the X-axis. */ get angleAxisMajorStrokeThickness() { return this.i.aci; } set angleAxisMajorStrokeThickness(v) { this.i.aci = +v; } /** * Gets or sets the thickness to apply to major gridlines along the Y-axis. */ get valueAxisMajorStrokeThickness() { return this.i.ac5; } set valueAxisMajorStrokeThickness(v) { this.i.ac5 = +v; } /** * Gets or sets the thickness to apply to minor gridlines along the X-axis. */ get angleAxisMinorStrokeThickness() { return this.i.acl; } set angleAxisMinorStrokeThickness(v) { this.i.acl = +v; } /** * Gets or sets the thickness to apply to minor gridlines along the Y-axis. */ get valueAxisMinorStrokeThickness() { return this.i.ac8; } set valueAxisMinorStrokeThickness(v) { this.i.ac8 = +v; } /** * Gets or sets the color to apply to stripes along the X-axis. */ get angleAxisStrip() { return brushToString(this.i.ahi); } set angleAxisStrip(v) { this.i.ahi = stringToBrush(v); } /** * Gets or sets the color to apply to stripes along the Y-axis. */ get valueAxisStrip() { return brushToString(this.i.ahp); } set valueAxisStrip(v) { this.i.ahp = stringToBrush(v); } /** * Gets or sets the color to apply to the X-axis line. */ get angleAxisStroke() { return brushToString(this.i.ahj); } set angleAxisStroke(v) { this.i.ahj = stringToBrush(v); } /** * Gets or sets the color to apply to the Y-axis line. */ get valueAxisStroke() { return brushToString(this.i.ahq); } set valueAxisStroke(v) { this.i.ahq = stringToBrush(v); } /** * Gets or sets the thickness to apply to the X-axis line. */ get angleAxisStrokeThickness() { return this.i.acm; } set angleAxisStrokeThickness(v) { this.i.acm = +v; } /** * Gets or sets the thickness to apply to the Y-axis line. */ get valueAxisStrokeThickness() { return this.i.ac9; } set valueAxisStrokeThickness(v) { this.i.ac9 = +v; } /** * Gets or sets the length of tickmarks along the X-axis. */ get angleAxisTickLength() { return this.i.acn; } set angleAxisTickLength(v) { this.i.acn = +v; } /** * Gets or sets the length of tickmarks along the Y-axis. */ get valueAxisTickLength() { return this.i.ada; } set valueAxisTickLength(v) { this.i.ada = +v; } /** * Gets or sets the color to apply to tickmarks along the X-axis. */ get angleAxisTickStroke() { return brushToString(this.i.ahk); } set angleAxisTickStroke(v) { this.i.ahk = stringToBrush(v); } /** * Gets or sets the color to apply to tickmarks along the Y-axis. */ get valueAxisTickStroke() { return brushToString(this.i.ahr); } set valueAxisTickStroke(v) { this.i.ahr = stringToBrush(v); } /** * Gets or sets the thickness to apply to tickmarks along the X-axis. */ get angleAxisTickStrokeThickness() { return this.i.aco; } set angleAxisTickStrokeThickness(v) { this.i.aco = +v; } /** * Gets or sets the thickness to apply to tickmarks along the Y-axis. */ get valueAxisTickStrokeThickness() { return this.i.adb; } set valueAxisTickStrokeThickness(v) { this.i.adb = +v; } /** * Gets or sets the Text to display below the X-axis. */ get angleAxisTitle() { return this.i.aer; } set angleAxisTitle(v) { this.i.aer = v; } /** * Gets or sets the Text to display to the left of the Y-axis. */ get valueAxisTitle() { return this.i.afz; } set valueAxisTitle(v) { this.i.afz = v; } /** * Gets or sets the color to apply to minor gridlines along the X-axis. */ get angleAxisMinorStroke() { return brushToString(this.i.ahh); } set angleAxisMinorStroke(v) { this.i.ahh = stringToBrush(v); } /** * Gets or sets the color to apply to minor gridlines along the Y-axis. */ get valueAxisMinorStroke() { return brushToString(this.i.aho); } set valueAxisMinorStroke(v) { this.i.aho = stringToBrush(v); } /** * Gets or sets the angle of rotation for labels along the X-axis. */ get angleAxisLabelAngle() { return this.i.acd; } set angleAxisLabelAngle(v) { this.i.acd = +v; } /** * Gets or sets the angle of rotation for labels along the Y-axis. */ get valueAxisLabelAngle() { return this.i.ac0; } set valueAxisLabelAngle(v) { this.i.ac0 = +v; } /** * Gets or sets the distance between the X-axis and the bottom of the chart. */ get angleAxisExtent() { return this.i.acc; } set angleAxisExtent(v) { this.i.acc = +v; } /** * Gets or sets the maximum distance between the X-axis and the bottom of the chart. */ get angleAxisMaximumExtent() { return this.i.acj; } set angleAxisMaximumExtent(v) { this.i.acj = +v; } /** * Gets or sets the maximum width between the X-axis and the bottom of the chart, as a percentage of total chart width. */ get angleAxisMaximumExtentPercentage() { return this.i.ack; } set angleAxisMaximumExtentPercentage(v) { this.i.ack = +v; } /** * Gets or sets the distance between the Y-axis and the left edge of the chart. */ get valueAxisExtent() { return this.i.acz; } set valueAxisExtent(v) { this.i.acz = +v; } /** * Gets or sets the distance between the Y-axis and the left edge of the chart. */ get valueAxisMaximumExtent() { return this.i.ac6; } set valueAxisMaximumExtent(v) { this.i.ac6 = +v; } /** * Gets or sets the distance between the Y-axis and the left edge of the chart. */ get valueAxisMaximumExtentPercentage() { return this.i.ac7; } set valueAxisMaximumExtentPercentage(v) { this.i.ac7 = +v; } /** * Gets or sets the angle of rotation for the X-axis title. */ get angleAxisTitleAngle() { return this.i.acp; } set angleAxisTitleAngle(v) { this.i.acp = +v; } /** * Gets or sets the angle of rotation for the Y-axis title. */ get valueAxisTitleAngle() { return this.i.adc; } set valueAxisTitleAngle(v) { this.i.adc = +v; } /** * Gets or sets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. */ get angleAxisInverted() { return this.i.aa8; } set angleAxisInverted(v) { this.i.aa8 = ensureBool(v); } /** * Gets or sets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. */ get valueAxisInverted() { return this.i.aa9; } set valueAxisInverted(v) { this.i.aa9 = ensureBool(v); } /** * Gets or sets Horizontal alignment of the X-axis title. */ get angleAxisTitleAlignment() { return this.i.agv; } set angleAxisTitleAlignment(v) { this.i.agv = ensureEnum(HorizontalAlignment_$type, v); } /** * Gets or sets Vertical alignment of the Y-axis title. */ get valueAxisTitleAlignment() { return this.i.ahy; } set valueAxisTitleAlignment(v) { this.i.ahy = ensureEnum(VerticalAlignment_$type, v); } /** * Gets or sets Horizontal alignment of X-axis labels. */ get angleAxisLabelHorizontalAlignment() { return this.i.agu; } set angleAxisLabelHorizontalAlignment(v) { this.i.agu = ensureEnum(HorizontalAlignment_$type, v); } /** * Gets or sets Horizontal alignment of Y-axis labels. */ get valueAxisLabelHorizontalAlignment() { return this.i.agw; } set valueAxisLabelHorizontalAlignment(v) { this.i.agw = ensureEnum(HorizontalAlignment_$type, v); } /** * Gets or sets Vertical alignment of X-axis labels. */ get angleAxisLabelVerticalAlignment() { return this.i.ahw; } set angleAxisLabelVerticalAlignment(v) { this.i.ahw = ensureEnum(VerticalAlignment_$type, v); } /** * Gets or sets Vertical alignment of Y-axis labels. */ get valueAxisLabelVerticalAlignment() { return this.i.ahx; } set valueAxisLabelVerticalAlignment(v) { this.i.ahx = ensureEnum(VerticalAlignment_$type, v); } /** * Gets or sets Visibility of X-axis labels. */ get angleAxisLabelVisibility() { return this.i.ah1; } set angleAxisLabelVisibility(v) { this.i.ah1 = ensureEnum(Visibility_$type, v); } /** * Gets or sets Visibility of Y-axis labels. */ get valueAxisLabelVisibility() { return this.i.ah2; } set valueAxisLabelVisibility(v) { this.i.ah2 = ensureEnum(Visibility_$type, v); } /** * Gets or sets location of Y-axis labels, relative to the plot area. */ get valueAxisLabelLocation() { return this.i.aa5; } set valueAxisLabelLocation(v) { this.i.aa5 = ensureEnum(ValueAxisLabelLocation_$type, v); } /** * Gets or sets location of X-axis labels, relative to the plot area. */ get angleAxisLabelLocation() { return this.i.aav; } set angleAxisLabelLocation(v) { this.i.aav = ensureEnum(AngleAxisLabelLocation_$type, v); } /** * Gets or sets the format string for the X axis label. */ get angleAxisLabelFormat() { return this.i.ad1; } set angleAxisLabelFormat(v) { this.i.ad1 = v; } /** * Gets or sets the format specifiers to use with the AngleAxisLabelFormat string. */ get angleAxisLabelFormatSpecifiers() { return this.i.aas; } set angleAxisLabelFormatSpecifiers(v) { if (v && !Array.isArray(v) && typeof (v) == "string") { const re = /\s*(?:,|\s|$)\s*/gm; v = v.split(re); } this.i.aas = v; } /** * Gets or sets the format string for the Y axis label. */ get valueAxisLabelFormat() { return this.i.ae9; } set valueAxisLabelFormat(v) { this.i.ae9 = v; } /** * Gets or sets the format specifiers to use with the ValueAxisLabelFormat string. */ get valueAxisLabelFormatSpecifiers() { return this.i.aat; } set valueAxisLabelFormatSpecifiers(v) { if (v && !Array.isArray(v) && typeof (v) == "string") { const re = /\s*(?:,|\s|$)\s*/gm; v = v.split(re); } this.i.aat = v; } findByName(name) { var baseResult = super.findByName(name); if (baseResult) { return baseResult; } if (this.angleAxisLabelFormatSpecifiers != null && arrayFindByName(this.angleAxisLabelFormatSpecifiers, name)) { return arrayFindByName(this.angleAxisLabelFormatSpecifiers, name); } if (this.valueAxisLabelFormatSpecifiers != null && arrayFindByName(this.valueAxisLabelFormatSpecifiers, name)) { return arrayFindByName(this.valueAxisLabelFormatSpecifiers, name); } return null; } /** * Called by the UI framework to provide a UI container for rendering this control. * @param container * The UI container element. */ provideContainer(container) { this.i.provideContainer(container); } /** * Converts the given visual location to a data value. * @param unscaledValue * The x-coordinate of the location to scale. */ getScaledAngle(unscaledValue) { let iv = this.i.acv(unscaledValue); return (iv); } /** * Converts the given data value to a visual location. * @param scaledValue * The data value to un-scale. */ getUnscaledAngle(scaledValue) { let iv = this.i.acx(scaledValue); return (iv); } /** * Converts the given visual location to a data value. * @param unscaledValue * The y-coordinate of the location to scale. */ getScaledValue(unscaledValue) { let iv = this.i.acw(unscaledValue); return (iv); } /** * Converts the given data value to a visual location. * @param scaledValue * The data value to un-scale. */ getUnscaledValue(scaledValue) { let iv = this.i.acy(scaledValue); return (iv); } }