0
我對io6編程相對比較陌生,並且在獲取核心圖以便將軸標籤放在我想要的位置上掙扎。我認爲刻度線位於正確的位置,但下面的代碼中標籤丟失。我想要在NSmutableArray xd上以均勻間隔排列的刻度線。但標籤值應該是刻度標記位置的指數值。任何人都可以提供建議嗎?核心標籤
在此先感謝
NSMutableArray *xd = [[dataClass sharedInstance] xGrid];
CPTXYAxis *x = axisSet.xAxis;
x.labelingPolicy=CPTAxisLabelingPolicyNone;
int totalNumberOfPoints = 10.0;
int i = 0;
NSMutableSet *xLabels = [NSMutableSet setWithCapacity:totalNumberOfPoints];
NSMutableSet *xLocations = [NSMutableSet setWithCapacity:totalNumberOfPoints];
while (i < totalNumberOfPoints)
{
NSNumber *xData = [NSNumber numberWithDouble:[[xd objectAtIndex:(i*100.0/totalNumberOfPoints)] doubleValue]];
double xData2 = exp([[xd objectAtIndex:(i*100.0/totalNumberOfPoints)] doubleValue]);
CPTAxisLabel *label = [[CPTAxisLabel alloc] initWithText:[NSString stringWithFormat:@"%.2f", xData2] textStyle:x.labelTextStyle];
label.tickLocation = CPTDecimalFromInt([xData doubleValue]);
label.offset = x.majorTickLength;
if (label)
{
[xLabels addObject:label];
[xLocations addObject:xData];
}
i ++;
}
編輯:我可能沒有明確。我遇到的問題是,使用上面的代碼,沒有標籤顯示在圖上。
你想標上指數還是隻使用文本格式,如「2.0e5」或「2.0 x 10^5」? –
指數值的大小都將足夠小,我不需要特殊的格式。只是%.2f。 – user2853230