我在iOS中使用CorePlot来显示图表,我可以显示y轴自定义标签,但无法看到X轴自定义标签。
以下是我用于显示X轴自定义标签的代码..
// 2 - Get axis set
CPTXYAxisSet *axisSet = (CPTXYAxisSet *) self.hostView.hostedGraph.axisSet;
// 3 - Configure x-axis
CPTAxis *x = axisSet.xAxis;
x.titleTextStyle = axisTitleStyle;
x.titleOffset = 0.0f;
x.axisLineStyle = axisLineStyle;
x.labelingPolicy = CPTAxisLabelingPolicyNone;
x.labelTextStyle = axisTextStyle;
x.majorTickLineStyle = axisLineStyle;
x.majorTickLength = 4.0f;
x.minorTickLength = 0.0f;
x.tickDirection = CPTSignNegative;
// Draw labels
NSArray *xCustomTickLocations = [NSArray arrayWithObjects:[NSDecimalNumber numberWithInt:1], [NSDecimalNumber numberWithInt:2],[NSDecimalNumber numberWithInt:3],[NSDecimalNumber numberWithInt:4],[NSDecimalNumber numberWithInt:5],[NSDecimalNumber numberWithInt:6],[NSDecimalNumber numberWithInt:7] ,nil];
NSArray *xAxisLabels = [NSArray arrayWithObjects:@"A", @"B", @"C", @"D", @"E",@"F",@"G", nil];
NSUInteger labelLocation = 0;
NSMutableArray *xCustomLabels = [NSMutableArray arrayWithCapacity:[xAxisLabels count]];
for (NSNumber *tickLocation in xCustomTickLocations) {
CPTAxisLabel *newLabel = [[CPTAxisLabel alloc] initWithText: [xAxisLabels objectAtIndex:labelLocation++] textStyle:x.labelTextStyle];
newLabel.tickLocation = [tickLocation decimalValue];
[xCustomLabels addObject:newLabel];
}
x.axisLabels = [NSSet setWithArray:xCustomLabels];
x.majorTickLocations = [NSSet setWithArray:xCustomTickLocations];
请帮我解决我做错的事。刻度线是可见的,但不是标签。
答案 0 :(得分:0)
我发现了这个问题,实际上标签已经被绘制但是超出了框架。
所以我只是增加了图形底部填充。