2

私はコアプロットに不慣れで、違いは何なのか疑問に思っていCPTBarPlotFieldBarLocation ますCPTBarPlotFieldBarTip。私はコアプロットの例CPTTestApp_ipadViewControllerを見てきましたが、これらのフィールド列挙型の両方が-メソッドで策略を埋めるときに呼び出されるのを見ましたnumberForPlotが、違いはわかりません。

助けてくれてありがとう

4

1 に答える 1

4

違いは非常に大きいです。CPTBarPlotField型の定義を見るCPTBarPlotと、その列挙型に 3 つの値があることがわかります。

  1. CPTBarPlotFieldBarLocation:独立した座標軸上のバーの位置。
  2. CPTBarPlotFieldBarTipバーチップ値。
  3. CPTBarPlotFieldBarBase :バーベース (barBasesVary が YES の場合のみ使用)。

その値をどこで使用できますか? OK、メソッドでこの定数を使用する必要があります-(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 ....)。

于 2011-09-21T12:46:19.850 に答える