为什么80%的码农都做不了架构师?>>>   

导入

  • 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];

注: 文章由我们 iOS122(http://www.ios122.com)的小伙伴 @偌一茗 整理,喜欢就一起参与: iOS122 任务池

转载于:https://my.oschina.net/ios122/blog/526733

PNChart,简洁高效有动画效果的iOS图表库相关推荐

  1. 推荐三款强大的有3D效果的js图表库

    目录 1:highcharts--3D和2D 2:ichartsjs--3D和2D 3:echarts--3d-2d 1:highcharts--3D和2D https://www.highchart ...

  2. ios开发——使用CALayer和Core Animation做动画效果

    一. CALayer (一). CALayer简介 在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个文本输入框.一个图标等等,这些都是UIView,其实UIV ...

  3. 分享111个JS特效动画效果,总有一款适合您

    分享111个JS特效动画效果,总有一款适合您 111个JS特效动画效果下载链接:https://pan.baidu.com/s/1s8mWkRlIZML2t5v1g1rlDA?pwd=pe5p  提取 ...

  4. iOS开发库和框架大全

    音频 AudioBus:下一代 App 到 App 的实时音频路由.官网 AudioKit:一个强大的音频合成,处理和分析的工具集.官网 EZAudio:一个基于 Core Audio 的 iOS/O ...

  5. 27个提升效率的iOS开源库推荐

    2019独角兽企业重金招聘Python工程师标准>>> 我热爱开源,更喜爱那些花费宝贵的业余时间来创造奇迹的开发者们,感谢他们将自己辛苦劳动的成果无偿分享给大家.开源作者和贡献者们, ...

  6. 27个iOS开源库,让你的开发坐上火箭吧

    本文翻译自Medium,原作者是Paweł Białecki,原文 27个iOS开源库,让你的开发坐上火箭吧 你不会想错过他们,真的. 我爱开源. 并且我喜欢开发者们,把他们宝贵的私人时间用来创造神奇 ...

  7. ios开发——27个iOS开源库,让你的开发坐上火箭吧

    本文翻译自Medium,原作者是Paweł Białecki,原文 27个iOS开源库,让你的开发坐上火箭吧 你不会想错过他们,真的. 我爱开源. 并且我喜欢开发者们,把他们宝贵的私人时间用来创造神奇 ...

  8. iOS动画效果、绘制图形

    文章转载自:http://www.cnblogs.com/kenshincui/p/3972100.html 概览 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥 ...

  9. 简单的UIButton按钮动画效果iOS源码

    这个是简单的UIButton按钮动画效果案例,源码,简单的UIButton按钮动画,可以自定义button属性. 效果图: <ignore_js_op> 使用方法: 使用时把ButtonA ...

最新文章

  1. 图像处理:Hough变换原理分析
  2. matlab程序崩溃怎么解决,跪求matlab达人帮我看看程序,我实在是要崩溃了......
  3. buu-[RoarCTF2019]polyre(控制流平坦化,虚假控制流程)
  4. DOM树-Render树-RenderLayer树 对应关系
  5. 一个数据包的旅程_如何学习数据科学并开始您的惊人旅程
  6. python中利用re模块使用正则表达式
  7. ajax header的bearer token验证
  8. JVM第一讲:为什么需要 JVM?它处在什么位置?
  9. Spring MVC拦截器实现用户登录权限验证案例
  10. 遗传算法求解旅行商问题
  11. html背景怎么变成透明的,怎样把图片背景变成透明
  12. 超市库存管理系统 (SSM JAVA)
  13. iOS框架引见--媒体层
  14. 小程序中自定义图片预览功能
  15. html手机陀螺儀页面,详解html5如何获取手机陀螺仪角度信息的示例代码
  16. 『TensorFlow』pad图片
  17. Hadoop多节点规划与搭建
  18. 微信小程序--获取当前时间
  19. ThingsBoard使用规则链将设备信息转发至外部mqtt
  20. JVM中引用计数法与可达性分析

热门文章

  1. 连接oracle配置文件参数,Hibernate3 +Oracle10g 集群,hibernate配置文件中如何编写连接参数...
  2. JDBC编程可能遇到的错误:java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or ..
  3. 怎么才能在百度上看到自己发布的博文?
  4. vue请求数据传给子组件_vue.js基础,父组件如何向子组件传递数据「607」
  5. catti二级笔译综合能力真题_CATTI 二级口笔译教材、真题和模拟试题汇总!
  6. Spring Boot一个极简且完整的后台框架
  7. [深入学习Redis]RedisAPI的原子性分析
  8. 个人看法---团队合作
  9. java新手笔记3 运算符循环
  10. bzoj1334 [Baltic2008]Elect