我想将触摸点转换为CPTXYPlotSpace点。但是我发现有真实坐标的偏移量。 我发现,它从边界计算出x轴的一部分。 我希望将点映射到x& y轴的值。
我的英语很差...... 我想知道哪里错了?请告诉我。
这是代码。
-(BOOL)plotSpace:(CPTPlotSpace *)space shouldHandlePointingDeviceDownEvent:(id)event atPoint:(CGPoint)point
{ NSDecimal plotPoint[2];
CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)graph.defaultPlotSpace;
[plotSpace plotPoint:plotPoint forPlotAreaViewPoint:point];
//HERE HAVE SOME OFFSET. I FIND ,it Calculated part of the x-axis from the border
NSLog(@"touch plotPoint = %d, %f",
[[NSDecimalNumber decimalNumberWithDecimal:plotPoint[CPTCoordinateX]] intValue],
[[NSDecimalNumber decimalNumberWithDecimal:plotPoint[CPTCoordinateY]] doubleValue]);
return YES;
}
答案 0 :(得分:3)
首先将点转换为绘图区域的坐标系:
CGPoint plotAreaPoint = [graph convertPoint:point toLayer:graph.plotAreaFrame.plotArea];
[plotSpace plotPoint:plotPoint forPlotAreaViewPoint:plotAreaPoint];