您现在的位置是:首页 > 文章详情

PNChart,简洁高效有动画效果的iOS图表库

日期:2017-06-03点击:375

导入

pod导入相对简单,要手动导入这个库,先下载下来(https://github.com/kevinzhow/PNChart),解压后把PNChart文件夹拖入工程中 运行发现#import"PNRadarChartDataItem.h"报红,在它的.h文件里引入#import<UIKit/UIKit.h>头文件;#import<UICountingLabel/UICountingLabel.h>报错,下载UICountingLabel(https://github.com/dataxpress/UICountingLabel)解压后把UICountingLabel的.m和.h文件拖入工程,把报错的#import<UICountingLabel/UICountingLabel.h>头文件换为#import"UICountingLabel.h" 

项目中引用头文件#import"PNChart.h"

折线图

PNLineChart * lineChart = [[PNLineChartalloc]initWithFrame:CGRectMake(0,135.0,SCREEN_WIDTH,200.0)]; //X轴数据 [lineChart setXLabels:@[@"SEP 1",@"SEP 2",@"SEP 3",@"SEP 4",@"SEP 5"]]; //Y轴数据 NSArray * data01Array =@[@60.1,@160.1,@126.4,@262.2,@186.2]; PNLineChartData *data01 = [PNLineChartDatanew]; data01.color = PNFreshGreen; data01.itemCount = lineChart.xLabels.count; data01.getData = ^(NSUInteger index) { CGFloat yValue = [data01Array[index] floatValue]; return [PNLineChartDataItemdataItemWithY:yValue]; }; //可以添加多条折线 NSArray * data02Array =@[@20.1,@180.1,@26.4,@202.2,@126.2]; PNLineChartData *data02 = [PNLineChartDatanew]; data02.color = PNTwitterColor; data02.itemCount = lineChart.xLabels.count; data02.getData = ^(NSUInteger index) { CGFloat yValue = [data02Array[index] floatValue]; return [PNLineChartDataItemdataItemWithY:yValue]; }; lineChart.chartData = @[data01, data02]; [lineChart strokeChart]; //加载在视图上 [self.windowaddSubview:lineChart];

柱状图

PNBarChart * barChart = [[PNBarChartalloc]initWithFrame:CGRectMake(0,135.0,SCREEN_WIDTH,200.0)]; //X轴数据 [barChart setXLabels:@[@"SEP 1",@"SEP 2",@"SEP 3",@"SEP 4",@"SEP 5"]]; //Y轴数据 [barChart setYValues:@[@1, @10,@2,@6,@3]]; [barChart strokeChart]; //加载在视图上 [self.windowaddSubview:barChart];

饼状图

PNPieChart *pieChart = [[PNPieChartalloc]initWithFrame:CGRectMake(40.0,155.0,240.0,240.0)items:items]; //饼状图文字颜色 pieChart.descriptionTextColor = [UIColorwhiteColor]; pieChart.descriptionTextFont = [UIFontfontWithName:@"Avenir-Medium"size:14.0]; //绘制 [pieChart strokeChart]; //加载在视图上 [self.windowaddSubview:pieChart];

圆形进度条

// total参数是进度条的总数据量,current是当前的数据量,closewise是绘制方向,YES是从左到右,NO为从右到左 PNCircleChart *circleChart = [[PNCircleChartalloc]initWithFrame:CGRectMake(40.0,155.0,240.0,240.0)total:@100current:@30clockwise:NO]; //绘制图形 [circleChart strokeChart]; //加载在视图上 [self.windowaddSubview:circleChart];

文章转载自 开源中国社区[https://www.oschina.net]

原文链接:https://yq.aliyun.com/articles/112394
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章