当前使用nativescript angular。我在显示图形数据时使用RadCartesianChart。对于水平轴使用DateTimeContinousAxis,并且DateTimeContinousAxis具有majorStep属性,该属性显示是Year,Month,Week还是Day。 RadCartesianChart还具有允许缩放图表的allowZoom功能。现在,客户想要的要求之一是,它希望动态更改majorStep值,只要用户放大图表,其中放大将更改为Day值,缩小到最大将更改为Year值。
这里的问题是,每次缩放图表时,图表的chartZoomed事件都不会返回任何比例值。
我尝试访问eventData中返回的对象,但其中没有返回缩放比例值。
这是我的示例代码。
chart-sample.component.ts
export class ChartAxesDateTimeComponent implements OnInit {
private _dateTimeSource: ObservableArray<Stock>;
constructor(private _dataService: DataService) { }
get dateTimeSource(): ObservableArray<Stock> {
return this._dateTimeSource;
}
ngOnInit() {
this._dateTimeSource = new ObservableArray(this._dataService.getDateTimeSource());
}
zoomLevel = 3
eventFunction(args) {
console.log(Object.keys(args.object));
console.log(Object.keys(args));
}
}
chart-sample.component.html
<RadCartesianChart tkExampleTitle tkToggleNavButton [horizontalZoom]="zoomLevel" (chartZoomed)="eventFunction($event)">
<DateTimeContinuousAxis tkCartesianHorizontalAxis allowPan="true" allowZoom="true" minimum="01/02/2015" maximum="01/10/2015" majorStep="Month" dateFormat="MMM-dd"
labelFitMode="Rotate" labelRotationAngle="1.2"></DateTimeContinuousAxis>
<LinearAxis tkCartesianVerticalAxis allowPan="true" allowZoom="false"></LinearAxis>
<AreaSeries tkCartesianSeries [items]="dateTimeSource" categoryProperty="TimeStamp" valueProperty="Amount" chartZoomed="testing($event)"></AreaSeries>
</RadCartesianChart>
这是返回的事件数据的返回,访问那些对象的属性不会显示缩放比例,这是我根据缩放比例执行动态majorStep值所需要的。
[eventName, object, pointData, pointIndex, series]
任何帮助,建议将不胜感激。谢谢。