核心图CPTBarPlotFieldBarLocation和CPTBarPlotFieldBarTip的差异?

时间:2011-07-19 06:29:45

标签: iphone core-plot cptbarplot

我是核心情节的新手,想知道CPTBarPlotFieldBarLocationCPTBarPlotFieldBarTip的区别。我一直在查看核心情节示例CPTTestApp_ipadViewController,我已经看到在使用numberForPlot方法填充ploy时调用了这两个字段枚举,但我不明白其中的区别。

感谢您的帮助

1 个答案:

答案 0 :(得分:4)

差异非常大。如果我们在CPTBarPlotField中查看类型CPTBarPlot的定义,我们会看到该枚举中有三个值:

  1. CPTBarPlotFieldBarLocation独立坐标轴上的条形位置。
  2. CPTBarPlotFieldBarTip条形码值。
  3. CPTBarPlotFieldBarBase条形基数(仅在barBasesVary为YES时使用)。
  4. 你可以问 - 我在哪里可以使用这些值?好的,你应该在方法-(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 *plotCorePlot会自动设置条形的位置(位置0,1,2,3, 4 ....)。