CorePlot饼图高级用法

CPTPieChart:绘制饼图
建议阅读以下内容时,同时参看GitHub上coreplot自带的工程例子。

CPTGraph的属性axisSet需要置为nil(即不需要展示坐标轴)

基本属性:
pieRadius:半径
startAngle:开始绘制的偏移(只是圆沿着中心旋转了以下)
endAngle
sliceDirection:饼图按照逆时针绘制
centerAnchor:重心
overlayFill:饼图的阴影/光泽效果(建议设置为nil)
shadow:阴影效果
pieInnerRadius:类似于让饼图空心的半径

//饼图文字展示方向和位置
piePlot.labelRotationRelativeToRadius = YES;//文字是否顺着图形的方向
piePlot.labelRotation = CPTFloat(-M_PI_2);
piePlot.labelOffset = -50.0;

设置好数据源plotData后,reloadData刷新界面。

代理方法:
//返回扇形数目(其他两个图形也有,例如折线图表示折点个数)

  • (NSUInteger)numberOfRecordsForPlot:(CPTPlot *)plot

//返回每个扇形的比例(其他两个图形也有,意义不同)

  • (NSNumber *)numberForPlot:(CPTPlot *)plot field:(NSUInteger)fieldEnum recordIndex:(NSUInteger)idx

//返回每个扇形的标题(可以为比重 / 内容)

  • (CPTLayer *)dataLabelForPlot:(CPTPlot *)plot recordIndex:(NSUInteger)idx

//条目 / 图例说明文字(饼图和柱状图有该代理)CPTLegend的代理

  • (NSAttributedString *)attributedLegendTitleForPieChart:(CPTPieChart *)pieChart recordIndex:(NSUInteger)idx

高级用法
代理:
//绘制某一扇形是的颜色
-(CPTFill *)sliceFillForPieChart:(CPTPieChart *)pieChart recordIndex:(NSUInteger)idx

//第index扇形突出展示
-(CGFloat)radialOffsetForPieChart:(CPTPieChart *)pieChart recordIndex:(NSUInteger)index

//点击饼图的某一个部分事件
-(void)pieChart:(CPTPieChart *)plot sliceWasSelectedAtRecordIndex:(NSUInteger)index

你可能感兴趣的:(CorePlot饼图高级用法)