赞
踩
AAChartKit 项目,是AAInfographics的 Objective-C 语言版本,是在流行的开源前端图表库Highcharts的基础上,封装的面向对象的,一组简单易用,极其精美的图表绘制控件。
GitHub地址:https://github.com/AAChartModel/AAChartKit/blob/master
根据官方文档的介绍,实现一个最简单的图表,代码如下:
#import "ColumnChartController.h"
#import "AAChartKit.h"
@interface ColumnChartController ()<AAChartViewEventDelegate>
@end
@implementation ColumnChartController
- (void)viewDidLoad {
[super viewDidLoad];
self.title = @"Column Chart 柱状图";
// 1.创建视图AAChartView
CGFloat chartViewWidth = self.view.frame.size.width;
CGFloat chartViewHeight = self.view.frame.size.height - 250;
AAChartView *chartView = [[AAChartView alloc]init];
chartView.delegate = self;
chartView.frame = CGRectMake(0, 60, chartViewWidth, chartViewHeight);
禁用 AAChartView 滚动效果(默认不禁用)
//self.aaChartView.scrollEnabled = NO;
[self.view addSubview:chartView];
// 2.配置视图模型AAChartModel
AAChartModel *aaChartModel = AAChartModel.new
.chartTypeSet(AAChartTypeArea)//设置图表的类型(这里以设置的为折线面积图为例)
.titleSet(@"编程语言热度")//设置图表标题
.subtitleSet(@"虚拟数据")//设置图表副标题
.categoriesSet(@[@"Java",@"Swift",@"Python",@"Ruby", @"PHP",@"Go",@"C",@"C#",@"C++"])//图表横轴的内容
.yAxisTitleSet(@"摄氏度")//设置图表 y 轴的单位
.seriesSet(@[
AASeriesElement.new
.nameSet(@"2017")
.dataSet(@[@7.0, @6.9, @9.5, @14.5, @18.2, @21.5, @25.2, @26.5, @23.3, @18.3, @13.9, @9.6]),
AASeriesElement.new
.nameSet(@"2018")
.dataSet(@[@0.2, @0.8, @5.7, @11.3, @17.0, @22.0, @24.8, @24.1, @20.1, @14.1, @8.6, @2.5]),
AASeriesElement.new
.nameSet(@"2019")
.dataSet(@[@0.9, @0.6, @3.5, @8.4, @13.5, @17.0, @18.6, @17.9, @14.3, @9.0, @3.9, @1.0]),
AASeriesElement.new
.nameSet(@"2020")
.dataSet(@[@3.9, @4.2, @5.7, @8.5, @11.9, @15.2, @17.0, @16.6, @14.2, @10.3, @6.6, @4.8]),
]);
// 3.图表视图对象调用图表模型对象,绘制最终图形
[chartView aa_drawChartWithChartModel:aaChartModel];
// /*仅仅更新 AAChartModel 对象的 series 属性时,动态刷新图表*/
// [chartView aa_onlyRefreshTheChartDataWithChartModelSeries:aaChartModelSeriesArray];
//
// /*更新 AAChartModel 内容之后,刷新图表*/
// [chartView aa_refreshChartWithChartModel:aaChartModel];
}
//实现对 AAChartView 事件代理的监听
#pragma mark -- AAChartView delegate
- (void)aaChartView:(AAChartView *)aaChartView moveOverEventWithMessage:(AAMoveOverEventMessageModel *)message {
NSLog(@"声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/365041
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。