ios coreplot多个y轴

时间:2012-08-14 08:14:46

标签: iphone ios core-plot

我一直在寻找这个问题以获得3天的答案但是无法理解。

我需要在图表中添加3个散点图,这是我的代码:

CPTXYAxis *x = [[CPTXYAxis alloc] init];
CPTXYAxis *lefty = [[CPTXYAxis alloc] init];
CPTXYAxis *righty = [[CPTXYAxis alloc] init];

x.coordinate = CPTCoordinateX;
lefty.coordinate = CPTCoordinateY;
righty.coordinate = CPTCoordinateY;

CPTAxisSet *axisSetTmp = [[CPTAxisSet alloc] init];

用于初始化和创建3个差分图空间,如:

float xAxisMin = 0;
float xAxisMax = 350;
float yAxisMin = 0;
float yAxisMax = 50;

// We modify the graph's plot space to setup the axis' min / max values.
CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)self.graph.defaultPlotSpace;
plotSpace.xRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat(xAxisMin) length:CPTDecimalFromFloat(xAxisMax - xAxisMin)];
plotSpace.yRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat(yAxisMin) length:CPTDecimalFromFloat(yAxisMax - yAxisMin)];
x.plotSpace = plotSpace;

最后创建我的情节:

CPTScatterPlot *plot = [[CPTScatterPlot alloc] init];
plot.dataSource = self;
plot.identifier = @"mainplot";
plot.dataLineStyle = lineStyle;
plot.plotSymbol = nil;
plot.plotSpace = plotSpace;

当我运行它时,添加了3行,但我只有1个y轴。无法弄清楚问题。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

  1. 您是否在图表中添加了新轴?

    graph.axisSet.axes = [NSArray arrayWithObjects:x, lefty, righty, nil];
    
  2. 如果所有的轴和绘图都具有相同的绘图范围,则可以为所有这些绘图区域使用相同的绘图空间。新图表以您可以使用的图表(defaultPlotSpace)开头。使用-addPlotSpace:方法向图表添加其他绘图空间。