Изменение параметров рядов данных

Требования к операционной системе: 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

См. также:

Примеры использования компонентов