为什么在字符串标签中找不到与CPTAxisLabelingPolicyNone不同的labelPolicy ???
x.labelingPolicy = CPTAxisLabelingPolicyNone;
我想要这个GRIDLineStyle,但是我的文字标签是:
x.labelingPolicy = CPTAxisLabelingPolicyFixedInterval
我使用以下代码填写xAxisLabels:
NSMutableArray *labels = [[NSMutableArray alloc] initWithCapacity:[labelsAxisX count]];
int idx = 0;
for (NSString *product in labelsAxisX)
{
CPTAxisLabel *label = [[CPTAxisLabel alloc] initWithText:product textStyle:x.labelTextStyle];
label.tickLocation = CPTDecimalFromInt(idx);
label.offset = 5.0f;
[labels addObject:label];
[label release];
idx++;
}
x.axisLabels = [NSSet setWithArray:labels];
[labels release];
答案 0 :(得分:1)
使用CPTAxisLabelingPolicyNone
标签政策,除了制作标签外,还需要提供刻度位置(主要和/或次要)。如果您更愿意使用固定间隔标签政策,则可以为轴返回文本标签而不是数字创建自定义数字格式化程序。
以下是改编自Plot Gallery示例应用程序中的标签政策演示的示例:
NSMutableSet *tickLocations = [NSMutableSet set];
for ( NSUInteger loc = 0; loc < labelsAxisX.count; loc++ ) {
[tickLocations addObject:[NSDecimalNumber numberWithUnsignedInteger:loc]];
}
axis.majorTickLocations = tickLocations;
次要刻度线位置的工作方式相同。