core-plot:用户交互仅限x轴

时间:2013-01-09 09:36:29

标签: ios core-plot

在iOS上运行Core-Plot。我正在设置plotSpace.allowsUserInteraction = YES

我想通过捏合来仅缩放X轴。

例如,Y轴的最大范围始终为100.X轴视图的最大范围为60到120.

我认为最好的解决方案是只有通过水平捏合的X轴缩放,通过垂直捏合的Y轴缩放。

2 个答案:

答案 0 :(得分:2)

[[self.graph defaultPlotSpace] setAllowsUserInteraction:YES];
[self.graph defaultPlotSpace].delegate = self;

比委托你要smth。像这样

- (CPTPlotRange *)plotSpace:(CPTPlotSpace *)space willChangePlotRangeTo:(CPTPlotRange *)newRange forCoordinate:(CPTCoordinate)coordinate {

    if (CPTCoordinateY == coordinate) {
        CGRect chartBounds = self.graph.bounds;
        return [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat(chartBounds.origin.y) length:CPTDecimalFromFloat(chartBounds.size.height)];
    }

    return newRange;
}

答案 1 :(得分:1)

使用绘图空间委托。实施-plotSpace:willChangePlotRangeTo:forCoordinate:委托方法,并始终返回yRange的原始CPTCoordinateY