UNPKG

igniteui-react-charts

Version:

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

262 lines (261 loc) 7.46 kB
import { MarkerType_$type } from "./MarkerType"; import { MarkerOutlineMode_$type } from "./MarkerOutlineMode"; import { MarkerFillMode_$type } from "./MarkerFillMode"; import { IgrSeries } from "./igr-series"; import { ensureBool, ensureEnum, brushToString, stringToBrush } from "igniteui-react-core"; /** * Represents the base class for series containing markers. * * MarkerSeries represents the base class for series containing markers. * * Example: * * ```ts * <IgrDataChart * dataSource={this.state.dataSource} > * * <IgrCategoryXAxis name="xAxis" /> * <IgrNumericYAxis name="yAxis" /> * * <IgrColumnSeries * name="series1" * xAxisName="xAxis" * yAxisName="yAxis" * valueMemberPath="Value" /> * </IgrDataChart> * ``` * * ```ts * this.series = new IgrMarkerSeries({name: "series"}); * this.series.xAxis = this.categoryXAxis; * this.series.yAxis = this.numericYAxis; * this.series.xAxisName = "timeXAxis"; * this.series.yAxisName = "numericYAxis"; * this.series.volumeMemberPath="Volume"; * ``` */ export class IgrMarkerSeries extends IgrSeries { /** * @hidden */ get i() { return this._implementation; } constructor(props) { super(props); } /** * Returns whether the current series supports visual markers. * * `HasMarkers` property is overriden, it returns whether the current series supports visual markers. You can use it like this: * * ```ts * let gotMarkers: boolean = this.series.hasMarkers; * ``` */ get hasMarkers() { return this.i.hasMarkers; } get hasVisibleMarkers() { return this.i.en; } /** * Gets or sets the marker type for the current series object. * This property is ignored when the MarkerTemplate property is set * * `MarkerType` property gets or sets the marker type for the current series object. For example, you can set it like this: * * ```ts * this.series.markerType = "circle"; * ``` * * ```ts * <IgrDataChart * dataSource={this.state.dataSource} > * * <IgrCategoryXAxis name="xAxis" /> * <IgrNumericYAxis name="yAxis" /> * * <IgrColumnSeries * name="series1" * xAxisName="xAxis" * yAxisName="yAxis" * valueMemberPath="Value" * markerType = "circle"/> * </IgrDataChart> * ``` */ get markerType() { return this.i.xl; } set markerType(v) { this.i.xl = ensureEnum(MarkerType_$type, v); } /** * Represents the resolved marker type for the series. */ get actualMarkerType() { return this.i.xj; } set actualMarkerType(v) { this.i.xj = ensureEnum(MarkerType_$type, v); } /** * Gets or sets whether the marker for the current series object should be treated as circular. */ get isCustomMarkerCircular() { return this.i.xo; } set isCustomMarkerCircular(v) { this.i.xo = ensureBool(v); } /** * Gets whether the markers for the current series are in circular shape */ get effectiveIsMarkerCircular() { return this.i.xn; } /** * Gets or sets whether the marker outline is based on the marker brush of the series rather than the marker outlines collection. */ get markerOutlineMode() { return this.i.xf; } set markerOutlineMode(v) { this.i.xf = ensureEnum(MarkerOutlineMode_$type, v); } /** * Gets or sets whether the marker fill is based on the marker outline of the series rather than the marker brushes collection. */ get markerFillMode() { return this.i.xb; } set markerFillMode(v) { this.i.xb = ensureEnum(MarkerFillMode_$type, v); } /** * Gets or sets the MarkerTemplate for the current series object. * * `MarkerTemplate` property gets or sets the MarkerTemplate for the current series object. For example, you can use it like this: */ get markerTemplate() { return this.i.yd; } set markerTemplate(v) { this.i.yd = v; } /** * Gets or sets thickness of the marker outline */ get markerThickness() { return this.i.xu; } set markerThickness(v) { this.i.xu = +v; } /** * Gets the effective marker template for the current series object. * * `ActualMarkerTemplate` property gets the effective marker template for the current series object. You can use it like this: */ get actualMarkerTemplate() { return this.i.yb; } set actualMarkerTemplate(v) { this.i.yb = v; } /** * Gets or sets the brush that specifies how the current series object's marker interiors are painted. * * `MarkerBrush` property gets or sets the brush that specifies how the current series object's marker interiors are painted. You can use it like this: * * ```ts * this.series.markerBrush = "red"; * ``` * * ```ts * <IgrDataChart * dataSource={this.state.dataSource} > * * <IgrCategoryXAxis name="xAxis" /> * <IgrNumericYAxis name="yAxis" /> * * <IgrColumnSeries * name="series1" * xAxisName="xAxis" * yAxisName="yAxis" * valueMemberPath="Value" * markerBrush = "blue" /> * </IgrDataChart> * ``` */ get markerBrush() { return brushToString(this.i.yu); } set markerBrush(v) { this.i.yu = stringToBrush(v); } /** * Gets the effective marker brush for the current series object. * * `ActualMarkerBrush` property gets the effective marker brush for the current series object. For example, you can use it like this: * * ```ts * let effectiveMarkerBrush: string = this.series.actualMarkerBrush; * * ``` */ get actualMarkerBrush() { return brushToString(this.i.ys); } set actualMarkerBrush(v) { this.i.ys = stringToBrush(v); } /** * Gets or sets the brush that specifies how the current series object's marker outlines are painted. * * `MarkerOutline` property gets or sets the brush that specifies how the current series object's marker outlines are painted. You can use it like this: * * ```ts * this.series.markerOutline = "red"; * ``` * * ```ts * <IgrDataChart * dataSource={this.state.dataSource} > * * <IgrCategoryXAxis name="xAxis" /> * <IgrNumericYAxis name="yAxis" /> * * <IgrColumnSeries * name="series1" * xAxisName="xAxis" * yAxisName="yAxis" * valueMemberPath="Value" * markerOutline = "blue" /> * </IgrDataChart> * ``` */ get markerOutline() { return brushToString(this.i.yv); } set markerOutline(v) { this.i.yv = stringToBrush(v); } /** * Gets the effective marker outline for the current series object. * * `ActualMarkerOutline` property gets the effective marker outline for the current series object. You can use it like this: * * ```ts * let effectiveMarkerOutline: string = this.series.actualMarkerOutline; * * ``` */ get actualMarkerOutline() { return brushToString(this.i.yt); } set actualMarkerOutline(v) { this.i.yt = stringToBrush(v); } }