Iphone 实现画折线图
这段时间一直在搞iphone的开发,一直都没有时间更新博客,现在总算是弄的差不多了,今天又大改数据库,整个数据库数据格式进行了修改,导致代码的重新进行修改,22个表,22个view的所有查询结果处理都得进行修改,[ ]都嵌套了5层,整一个字符串的处理,和以前写的IPSRW很像,都是字符串处理。来看一段代码
[array1Data addObject:[NSString stringWithFormat:@"%@:",[[[separatedValueAY objectAtIndex:2] componentsSeparatedByStr回归主题,iphone里面要画图一般都是通过CoreGraphics.framwork和QuartzCore.framwork实现, apple的官方 sdk demon中包含了QuartzCore的基本用法,ing:@":"] objectAtIndex:0]]];
折线图![]()
![]()
![]()
![]()
具体demo请参考 http://developer.apple.com/library/ios/#samplecode/QuartzDemo/
要实现 折线图也就把全部的点连起来,movePointLineto,具体的调用里面的api就可以实现了,但是画坐标就比较麻烦了,里面需要去转很多,好在国外有人 开源了一个画 折线图的开发包,首先看看效果吧,具体怎么用可以参考作者git版本库中的wiki。使用方法:
http://github.com/devinross/tapkulibrary/wiki/How-To-Use-This-Library
![]()
![]()
![]()
这个包还提供了其他的很好看的UI,都可以调来用,但是我们只需要一个画图要把整个包都导进去,工程太大了,既然是 开源的那就想办法提取出来吧,原先之前也有人干过这样的事。 http://duivesteyn.net/2010/03/07/iphone-sdk-implementing-the-tapku-graph-in-your-application/
我对源代码进行简单的修改,使其显示坐标之类的,更加符合工程的需要,但是还没有实现画多组数据,只能画一组数据,不用viewContol,而使用addsubview,直接添加到当前的窗口,最终效果如下。
2. 添加QuartzCore![]()
1.工程添加tk库里面的如下文件
![]()
#import <QuartzCore/QuartzCore.h>
添加TapkuLibrary.bundle资源文件
3.代码中完成实例,数据初始化就可以用了
![]()
下载修改后的版本。下次有时间在整理一个工程版本出来。
原文链接
http://www.fly3q.com/2010/09/iphone-draw-a-line-chart-to-achieve.htm/