我在一个图中有2个散点图。两个图都具有相同的x轴,但y比例不同。所以我创造了一个新的情节空间。
CPTGraph *graph = self.hostView.hostedGraph;
CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *) graph.defaultPlotSpace;
CPTXYPlotSpace *newPlotSpace = (CPTXYPlotSpace *) graph.newPlotSpace;
newPlotSpace.identifier = @"Fund PlotSpace";
[graph addPlotSpace:newPlotSpace];
// 2 - Create the two plots
CPTScatterPlot *aaplPlot = [[CPTScatterPlot alloc] init];
aaplPlot.delegate = self;
[graph addPlot:aaplPlot toPlotSpace:plotSpace];
CPTScatterPlot *fdPlot = [[CPTScatterPlot alloc] init];
fundingPlot.delegate = self;
[graph addPlot:fdPlot toPlotSpace:newPlotSpace];
我也启用了用户互动
CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *) graph.defaultPlotSpace;
plotSpace.allowsUserInteraction = YES;
CPTXYPlotSpace *newPlotSpace = (CPTXYPlotSpace *) graph.newPlotSpace;
newPlotSpace.allowsUserInteraction = YES;
我也做过这个
self.hostView = [(CPTGraphHostingView *) [CPTGraphHostingView alloc] initWithFrame:self.view.bounds];
self.hostView.allowPinchScaling = YES;
[self.view addSubview:self.hostView];
但第二个情节不会变焦。我无法理解为什么。
修改
这是我的完整代码
答案 0 :(得分:0)
您正在创建两个新的绘图空间,但只在图表中添加一个。 -configureGraph
中启用了用户互动的用户与-configurePlots
中创建的用户互动不同,并添加到图表中。
-newPlotSpace
方法为您创建一个新的绘图空间对象。在-configureGraph
中,为其指定一个标识符并将其添加到图表中(从-configurePlots
移动这些行)。如果您以后需要引用它(例如,在-configurePlots
中),请执行以下操作:
CPTXYPlotSpace *newPlotSpace = (CPTXYPlotSpace *)[graph plotSpaceWithIdentifier:@"Fd Plot Space"];