我有一个核心图表,其中有价格数据。 x轴表示时间,而y表示价格。我已经确定,正是这段代码确定了刻度线之间的空间:

CGFloat dateCount = [timestamps count];
NSMutableSet *xLabels = [NSMutableSet setWithCapacity:dateCount];
NSMutableSet *xLocations = [NSMutableSet setWithCapacity:dateCount];
float i = 0;
for (NSString *date in timestampStrings) {
    CPTAxisLabel *label = [[CPTAxisLabel alloc] initWithText:date textStyle:x.labelTextStyle];
    CGFloat location = i+=spaceBetweenXAxisTicks; // Here's where the space between is set
    label.tickLocation = CPTDecimalFromCGFloat(location);
    label.offset = x.majorTickLength;
    if (label) {
        [xLabels addObject:label];
        [xLocations addObject:[NSNumber numberWithFloat:location]];
    }
}


是否有某种方法可以动态设置它们之间的间隔,以便最后一个刻度线位于图表的右侧?谢谢!

最佳答案

spaceBetweenXAxisTicks应为绘图空间xRange的长度除以刻度线数量减去一(1)。

10-08 07:48