Требования к операционной системе: iOS 5.0 и выше.
Мобильное устройство: iPad.
В данном примере реализовано удаление полученного ряда данных диаграммы. Также при нажатии на область диаграммы выполняются следующие действия:
удаляются параметры анимации ряда данных при их наличии;
устанавливается новое значение размера и формы маркеров ряда данных;
изменяется значение толщины и цвета линии ряда данных;
изменяется размер полученного маркера точки ряда.
В консоль среды разработки выводятся следующие значения:
признак воспроизведения анимации на диаграмме;
имя диаграммы;
имя полученного ряда данных диаграммы.
Для выполнения примера необходимо разместить взамен метода executeExample класса ViewController (см. раздел «Создание линейной диаграммы») следующий код:
// Функция для выполнения примера
-(void) executeExample{
// Получаем ряд данных
LineSeries *series = [chart seriesList][1];
if([chart hasSeries:series]){
// Удаляем полученный ряд данных
[chart deleteSeries:series];
}
};
// Обрабатываем событие касания области диаграммы
- (void)chartTouchesTapInView:(UIView *)v withPoint:(CGPoint)point{
// Получаем ряд данных
LineSeries *series = [chart seriesList][1];
[series setColor:[UIColor purpleColor]];
[series setShadowColor:[UIColor purpleColor]];
// Удаляем параметры анимации при их наличии
if([[series animations] count] == 1)
[series removeAnimation:[series animations][0]];
if([[series animations] count] > 1)
[series removeAllAnimations];
// Устанавливаем размер маркеров
[series setMarkerSize:10];
// Получаем объект маркера
ChartMarker *marker = [series marker];
[marker setBorderColor:[UIColor purpleColor]];
// Получаем объект с настройками формы маркеров
NSMutableDictionary *mDict = [marker dumpConfigurationToDict];
NSMutableDictionary *shapeDict = [mDict objectForKey:@"shape"];
// Устанавливаем новое значение формы маркеров
[shapeDict setValue:@2 forKey:@"value"];
[mDict setValue:shapeDict forKey:@"shape"];
// Создаем объект маркера на основе указанных настроек
ChartMarker *newMarker = [ChartMarker markerWithDict:mDict];
// Устанавливаем маркер
[series setMarker:newMarker];
// Получаем объект с настройками ряда данных
NSMutableDictionary *sDict = [series dumpConfigurationToDict];
// Получаем объект с настройками толщины линии ряда данных
NSMutableDictionary *thicknessDict = [sDict objectForKey:@"thickness"];
// Устанавливаем новое значение толщины линии ряда данных
[thicknessDict setValue:@5 forKey:@"value"];
[sDict setValue:thicknessDict forKey:@"thickness"];
[series configureSeriesWithDict:sDict];
// Обновляем ряд данных
[series forceDataUpdate];
// Получаем точку ряда данных в указанных координатах
LinePoint *linePoint = [[chart seriesList][0] findChartPointHit:CGPointMake(262, 201)];
// Устанавливаем размер маркера точки ряда
[linePoint setMarkerSize:30];
// Перерисовываем диаграмму
[[series chart] setNeedsRedraw];
// Выводим признак воспроизведения анимации диаграммы
NSLog(@"%@ %hhd", @"Признак воспроизведения анимации:", [chart isAnimationPlaying]);
// Выводим имя диаграммы
NSLog(@"%@ %@", @"Имя диаграммы:", [chart name]);
// Выводим имя ряда диаграммы
NSLog(@"%@ %@", @"Имя ряда диаграммы:", [series seriesName]);
}
В результате выполнения примера полученный ряд был удален:

Нажмите на область диаграммы.
В результате будут измены параметры рядов данных:

Также в консоль среды разработки будут выведены параметры диаграммы и ряда данных:
Признак воспроизведения анимации: 0
Имя диаграммы: chart
Имя ряда диаграммы: a2
См. также: