例如,如果绘图有五个数据点,例如x轴上的1-5。但我想仅在1,3& 5跳过2&我已经将积分计划为1,3,5。但我无法通过一条线连接这三个点。任何人都可以帮我解决这个问题 提前致谢
这是我正在使用的代码
-(NSNumber *)numberForPlot:(CPTPlot *)plot field:(NSUInteger)fieldEnum recordIndex:(NSUInteger)index
{
NSInteger valueCount = [[[CPDStockPriceStore sharedInstance] datesInMonth] count];
switch (fieldEnum) {
case CPTScatterPlotFieldX:
if ((index < valueCount) && ((index%3)==0)) {
return [NSNumber numberWithUnsignedInteger:(index)];
}
break;
case CPTScatterPlotFieldY:
if ([plot.identifier isEqual:CPDTickerSymbolAAPL] == YES)//graph1{
return [[[CPDStockPriceStore sharedInstance] monthlyPrices:CPDTickerSymbolAAPL] objectAtIndex:index];
} else
if (([plot.identifier isEqual:CPDTickerSymbolGOOG] == YES) && ((index%3)==0))//graph2 {
return [[[CPDStockPriceStore sharedInstance] monthlyPrices:CPDTickerSymbolGOOG] objectAtIndex:index];
} else if ([plot.identifier isEqual:CPDTickerSymbolMSFT] == YES)//graph3 {
return [[[CPDStockPriceStore sharedInstance] monthlyPrices:CPDTickerSymbolMSFT] objectAtIndex:index];
}
break;
}
return [NSDecimalNumber notANumber];
}
这里有三个不同的图形,只有当指数%3等于0时,graph2才会绘制点。现在我想加入此图2绘制的所有点。这段代码取自raywenderlich核心情节示例。
答案 0 :(得分:3)
要仅绘制三个点,请-numberOfRecordsForPlot:
返回三(3)。 x值不必等于索引。
Index x y ----------------------- 0 1 y0 1 3 y1 2 5 y2