我是核心情节的新手,想知道CPTBarPlotFieldBarLocation
和CPTBarPlotFieldBarTip
. 我一直在查看核心情节示例CPTTestApp_ipadViewController
,并且我看到在使用numberForPlot
-method 填充策略期间调用了这两个字段枚举,但我不明白其中的区别。
谢谢你的帮助
我是核心情节的新手,想知道CPTBarPlotFieldBarLocation
和CPTBarPlotFieldBarTip
. 我一直在查看核心情节示例CPTTestApp_ipadViewController
,并且我看到在使用numberForPlot
-method 填充策略期间调用了这两个字段枚举,但我不明白其中的区别。
谢谢你的帮助
差异非常大。如果我们查看类型的定义,CPTBarPlotField
我们CPTBarPlot
将看到该枚举中有三个值:
CPTBarPlotFieldBarLocation
:独立坐标轴上的条形位置。CPTBarPlotFieldBarTip
:条提示值。CPTBarPlotFieldBarBase
:条形基数(仅在 barBasesVary 为 YES 时使用)。您可以问 - 我在哪里可以使用该值?好的,你应该在方法中使用这个常量-(NSNumber *)numberForPlot:(CPTPlot *)plot field:(NSUInteger)fieldEnum recordIndex:(NSUInteger)index
。在该方法中,您应该为每个单独的柱返回该属性的值。例如,
-(NSNumber *)numberForPlot:(CPTPlot *)plot field:(NSUInteger)fieldEnum recordIndex:(NSUInteger)index
{
int plotIndex = [(NSNumber *)plot.identifier intValue];
return [[[datas objectAtIndex:plotIndex] objectAtIndex:index] valueForKey:(fieldEnum == CPTBarPlotFieldBarLocation ? @"x" : @"y")];
}
在我的示例中,我有一个字典,其中包含x轴(条形位置)和y(条形值)的值。
我想提一下,你不应该设置plotRange
你的属性CPTBarPlot *plot
或者CorePlot
会自动设置你的酒吧的位置(在位置 0、1、2、3、4 ......)。