0
코어 플롯 그래프를 X 축에서 오른쪽에서 왼쪽으로 동적으로 이동하려고합니다.오른쪽에서 왼쪽으로 코어 플롯 그래프 이동
예를 들어, 코어 플롯 갤러리 예제에서 그래프는 왼쪽에서 오른쪽으로 이동합니다. 이를 위해 나는 코드를 사용하고 있습니다 : 위의 코드에서
NSTimer *dataTimer = [NSTimer timerWithTimeInterval:1.0
target:self
selector:@selector(newData:)
userInfo:nil
repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:dataTimer forMode:NSDefaultRunLoopMode];
-(void)newData:(NSTimer *)theTimer
{
CPTPlot *thePlot = [[self getCorePLotGraph] plotWithIdentifier:@"Device1"];
CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)[self getCorePLotGraph].defaultPlotSpace;
NSUInteger location = (currentIndex >= kMaxDataPoints ? currentIndex - kMaxDataPoints + 2 : 0);
CPTPlotRange *newRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromUnsignedInteger(location)
length:CPTDecimalFromUnsignedInteger(kMaxDataPoints-2)];
**CPTMutablePlotRange *xRange = [[self getCoreplotSpace].xRange mutableCopy];
[xRange expandRangeByFactor:CPTDecimalFromCGFloat(-2.0)];
[self getCoreplotSpace].xRange = xRange;**
[CPTAnimation animate:plotSpace
property:@"xRange"
fromPlotRange:plotSpace.xRange
toPlotRange:newRange
duration:CPTFloat(1.0/kFrameRate)];
currentIndex++;
[temperatureValuesArray addObject:[NSNumber numberWithDouble:(1.0 - kAlpha) * [[temperatureValuesArray lastObject] doubleValue] + kAlpha * rand()/(double)RAND_MAX]];
[thePlot insertDataAtIndex:temperatureValuesArray.count - 1 numberOfRecords:1];
}
을, 굵은 코드는 지금 노력하고 무엇을 오른쪽에서 왼쪽으로 이동합니다.
그러나 오른쪽에서 왼쪽으로 이동하지는 않습니다. 이 일을 어떻게 도와 주실 수 있겠습니까?
감사
(아래 복사) 핵심 플롯에 포함 된 "Real Time Plot" demo의 코드를 복사처럼 보이는
'plotSpace.xRange = newRange;의 문제점은 무엇입니까? –
X 축을 오른쪽에서 왼쪽으로 이동하려면 왜 그런 코드를 사용했는지. 나는이 핵심 음모에 익숙하지 않다. 나는 그런 식으로 노력했다. 나를 바로 잡으세요. – Dhanunjaya