实例工程是使用xcode6.0创建的,对coreplot的一个封装,仅供参考。
代码实例
使用的CorePlot不是最新版(1.0版本),工程配置时采用简单的方式,即添加headers + .a文件。
在xcode6上推荐的部分配置如下:
Architectures为(ARCHS_STANDARD)。
Build Active Architecture Only 设为:NO
Valid Architectures 设为:armv7/armv7s,移出arm64(否则会报错,因为1.0后已经取消支持armv6)
Other Linker Flags为:-ObjC
Run path Search Paths为:$(inherited)和@executable_path/Frameworks
Header Search Paths为:$(inherited)和/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -- 这个建立工程时就有了
Library Search Paths为:$(inherited)和$(PROJECT_DIR)
最核心类的是 CPTGraph,例如CPTXYGraph是它的子类一个图。CPTGraph可包含多个图空间 CPTPlotSpace;一个图 CPTGraph可包含多个图形CPTSplot(曲线,饼图,柱状图等)
基础类:
CPTGraphHostingView :画板,加载在self.view上
CPTGraph :类似于图形画笔,是CPTGraphHostingView对象的一个属性hostedGraph
CPTTheme :CPTGraph的主题,及背景(目前五种)
CPTPlotAreaFrame :画笔可以绘制的范围,CPTGraph的对象plotAreaFrame,可以设置绘制空间,边距等
CPTXYPlotSpace:轴空间
1、X和Y的起始点和坐标范围(绘制空间)
2、通过CPTGraph的defaultPlotSpace对象取得
3、xRange和xRange:为CPTMutablePlotRange对象,基础用法:比如X轴的起始点和刻度最大长度
CPTXYAxisSet:轴集,通过CPTGraph对象的axisSet取得,对于折线图和柱状图,主要是X、Y轴
CPTXYAxis:涉及到:
majorGridLineStyle:大刻度线上的网格线线段样式,为空则不显示网格线
minorGridLineStyle:小刻度
gridLinesRange:网格线的显示范围
minorTicksPerInterval: 一个大刻度间分成多少个小刻度,为0不展示小刻度
axisLineCapMax:X或Y的箭头指示(CPTLineCap类)
CPTAnimation:涉及到图形的动画体验,待研究
CPTPlot:三种图形的基类
折线图
一个图中可以有多个曲线图,每个曲线图通过其 identifier 进行唯一标识
CPTScatterPlot :继承自 CPTPlot 绘制线条,各代理方法主要为CPTPlot配置,各代理待研究
CPTFill: 1、曲线覆盖的区域填充的渐变色 需要和areaBaseValue同时使用2、areaBaseValue设置该填充颜色从哪个值开始
CPTGradient:渐变色
CPTMutableLineStyle:线条/网格线 式样
CPTPlotSymbol:折线的节点用圆点颜色标注,CPTScatterPlot对象的属性plotSymbol取得
柱状图
CPTBarPlot :继承自 CPTPlot
CPTMutableTextStyle:自定义字体式样
CPTLineStyle:柱状图的线条,为CPTBarPlot的属性lineStyle
CPTLegend :条目说明(不同颜色柱状的说明)可以和CPTPlotSpaceAnnotation同时使用
CPTPlotSpaceAnnotation:柱状图动画
饼状图
CPTPieChart :继承自 CPTPlot
CPTMutableShadow:背景阴影
CPTPieChart对象的属性(该数据从网络上取得,待验证)
dataSource | 数据源(代理) |
pieRadius | 饼图的半径 |
startAngle | 第1片扇形的起始角度,默认是PI/2 |
sliceDirection | 扇形绘制的方向:正时针、反时针 |
centerAnchor | 重心 |
borderLineStyle | 边线的样式 |
delegate |
CPTLegend :条目说明(不同颜色柱状的说明)
CPTXYAxisSet :饼状图需要置为nil