Я использую библиотеку Core Plot для рисования графиков на iOS.Я хочу добавить цвета между линиями сетки YAXIS.Мне удалось сделать это с помощью установки свойства alternatingBandFills оси.Однако я также должен использовать пользовательские метки на yAxis, и когда я предоставляю пользовательские метки, свойство alternatingBandFills по какой-то причине не работает.
Любая помощь по добавлению цветов в промежутки между линиями сетки на yAxis, а также по использованию пользовательских меток будет высоко ценится.
Код, который я сейчас использую, выглядит так:1005 *
CPTXYAxisSet *axisSet = (CPTXYAxisSet *)self.hostedGraph.axisSet;
CPTXYAxis *yAxis = axisSet.yAxis;
yAxis.orthogonalCoordinateDecimal = CPTDecimalFromDouble(minValueX);
yAxis.labelingPolicy = CPTAxisLabelingPolicyNone;
NSArray *yAxisTickLocations = [NSArray arrayWithObjects:
[NSDecimalNumber numberWithDouble:lowerRedRangeFrom],
[NSDecimalNumber numberWithDouble:lowerOrangeRangeFrom],
[NSDecimalNumber numberWithDouble:greenRangeFrom],
[NSDecimalNumber numberWithDouble:upperOrangeRangeFrom],
[NSDecimalNumber numberWithDouble:upperRedRangeFrom],
[NSDecimalNumber numberWithDouble:upperRedRangeTo],
nil];
NSArray *yAxisLabels = [NSArray arrayWithObjects:@"Label1",@"Label2", @"Label3",@"Label4",@"Label5",@"Label6", nil];
NSUInteger labelLocationY = 0;
NSMutableArray *customLabelsY = [NSMutableArray arrayWithCapacity:[yAxisLabels count]];
for (NSNumber *tickLocation in yAxisTickLocations) {
CPTAxisLabel *newLabel = [[CPTAxisLabel alloc] initWithText: [yAxisLabels objectAtIndex:labelLocationY++] textStyle:axisSet.xAxis.labelTextStyle];
newLabel.tickLocation = [tickLocation decimalValue];
newLabel.offset = axisSet.xAxis.labelOffset + axisSet.xAxis.majorTickLength;
newLabel.rotation = M_PI/4;
[customLabelsY addObject:newLabel];
}
axisSet.yAxis.axisLabels = [NSSet setWithArray:customLabelsY];
yAxis.alternatingBandFills = [NSArray arrayWithObjects:
[CPTColor redColor],
[CPTColor orangeColor],
[CPTColor greenColor],
[CPTColor orangeColor],
[CPTColor redColor], nil];