3

線形の y 軸と対数の x 軸を持つ散布図があり、すべてうまく機能します。しかし、タッチ ポイントをプロット スペース座標に変換しようとすると、問題が発生します。

次のようなさまざまな場所が提案されているのを見てきました。

- (BOOL)plotSpace:(CPTPlotSpace *)space shouldHandlePointingDeviceUpEvent:(id)event atPoint:(CGPoint)point
{
CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)space;

CPTScatterPlot *scatterPlot = [[[plotSpace graph] allPlots] objectAtIndex:0]; 
CGPoint plotAreaPoint = [[plotSpace graph] convertPoint:point toLayer:scatterPlot];

NSLog(@"PlotAreaPoint : %.1f, %.1f", plotAreaPoint.x, plotAreaPoint.y);

NSDecimal dataPoint[2];
NSDecimalNumber *xCoordinate, *yCoordinate;

[plotSpace plotPoint:dataPoint forPlotAreaViewPoint:plotAreaPoint];

xCoordinate = [NSDecimalNumber decimalNumberWithDecimal:dataPoint[0]];
yCoordinate = [NSDecimalNumber decimalNumberWithDecimal:dataPoint[1]];

NSLog(@"DataPoint : %.1f, %.1f", [xCoordinate floatValue], [yCoordinate floatValue]);

return YES;
}

これを実行すると、plotAreaPoint は正しく、yCoordinate は正しいように見えます。左端 (5.0) または右端 (500.0) をタップすると xCoordinate は正しくなりますが、中央をタップすると線形軸のように動作します。真ん中をタップすると、50.0 ではなく 250.0 程度になります。何か不足していますか、それとも別の方法がありますか?

ありがとう、ティム

4

1 に答える 1

0

それはバグです。CorePlot課題追跡システムで報告してください。

于 2012-05-03T01:42:22.900 に答える