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

导入

项目中引用头文件#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];

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ytkah

dedecms发布文章提示"标题不能为空"怎么办

  开工了,首先祝贺大家猴年大吉!早上ytkah用dedecms发布文章提示"标题不能为空",春节这段时间基本没更新文章,回来后得赶紧补回来,可一开始就碰到这问...

2626
来自专栏我有一个梦想

3D游戏开发之在UE4中创建非玩家角色(NPC)

接着上节我们继续学习,现在我们来创建一些NPC(non-playable characters,非玩家角色)。在这个游戏中,当我们靠近NPC时,它们会做出相应的...

2698
来自专栏互扯程序

《Java小游戏实现》:贪吃蛇

现在是资源共享的时代,同样也是知识分享的时代,如果你觉得本文能学到知识,请把知识与别人分享。

1314
来自专栏walterlv - 吕毅的博客

如何精准地用打印机在贺卡或邀请函上打字

2018-08-26 07:35

3901
来自专栏Windows Community

Windows Community Toolkit 4.0 - DataGrid - Part03

在上面一篇 Windows Community Toolkit 4.0 - DataGrid - Part02 中,我们针对 DataGrid 控件的 Util...

372
来自专栏草根专栏

使用xUnit为.net core程序进行单元测试(4)

数据驱动的测试 打开PlayerCharacterShould.cs 添加几个Fact测试方法: [Fact] public v...

2804
来自专栏章鱼的慢慢技术路

通过C#脚本实现旋转的立方体

1243
来自专栏章鱼的慢慢技术路

通过C#脚本实现旋转的立方体

1894
来自专栏wym

Windows 下窗口画图---十天教会你俄罗斯方块

接上篇:https://blog.csdn.net/qq_41603898/article/details/80968333

921
来自专栏24K纯开源

Android Studio快捷键每日一练(1)

1、高亮显示相同的字符串 苹果:Cmd+shift+F7    Windows:Ctrl+shift+F7 这个快捷键会在当前文件中搜索这个字符串出现的所有位置...

1935

扫码关注云+社区