如何在底部的栏上显示标签?,我正在使用以下方法并设置labeloffset,但它在顶部显示标签(在图像标签文本“ Test”显示在栏的中间,但我需要显示底部) 。
-(CPTLayer *)dataLabelForPlot:(CPTPlot *)plot recordIndex:(NSUInteger)index
{
static CPTMutableTextStyle *labelText = nil;
if ( !labelText ) {
labelText = [[CPTMutableTextStyle alloc] init];
labelText.color = [CPTColor redColor];
}
NSString *labelValue = @"Test";
NSDictionary *testsDict = [assmentsTestsForGraphArray objectAtIndex:index];
NSInteger score = [[testsDict valueForKey:@"Score"] integerValue];
CPTTextLayer *newLayer = [[CPTTextLayer alloc] initWithText:labelValue style:labelText];
plot.labelOffset = -score;//0;//-10;
return newLayer;
}
至少有三种不同的方法可以做到这一点:
创建第二个图(条形图或散点图;这并不重要),并为其提供与原始图相同的x值,但将所有y值设置为等于x轴的垂直位置。标记第二个图而不是第一个图。设置第二个绘图,使其除了标签外不绘制其他任何内容,即将所有线型和填充设置为nil
。
在x轴上使用自定义轴标签,而不是在绘图数据标签上。
为每个标签而不是绘图数据标签创建绘图空间注释。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句