В iOS Charts не отображаются метки значений, когда на графике отображается более 3 наборов данных - PullRequest
0 голосов
/ 12 ноября 2018

Я использую платформу диаграмм для iOS в Objective-C.

Я пытаюсь нанести метки значений данных (значения y) на диаграмму с 4 наборами данных. если на моем графике есть 1, 2 или 3 набора данных, значения меток отображаются просто отлично. Если я добавлю 4-й набор данных, значения меток не будут отображаться вообще.

Я использую NSMutableArray объектов UIColor для каждого набора данных. Я устанавливаю цвет метки на [UIColor clearColor], когда не хочу, чтобы метка отображалась, и я устанавливаю его на [UIColor whiteColor], когда я хочу, чтобы он отображался для каждой точки данных.

NSMutableArray *labelColors = [[NSMutableArray alloc] init];

for (NSDictionary *data in dataArray )
{
    if (condition)
    {
        [labelColors addObject:UIColor.whiteColor];
    }
    else
    {
        [labelColors addObject:UIColor.clearColor];
    }
}
    dataSet.valueColors = labelColors;

Опять же, этот метод работает нормально, если я строю 1, 2 или 3 набора данных на своей оси X, но если я строю 4-й набор данных, он полностью прекращает рисовать метки. При настройке моей диаграммы два набора данных находятся на левой оси Y, а два набора данных - на правой оси Y.

Кто-нибудь знает, почему мои ярлыки не отображаются?

1 Ответ

0 голосов
/ 14 ноября 2018

Я исправил это одной строкой в ​​viewDidLoad, где я сначала настроил свой график.

_chartView.maxVisibleCount = 500;

Я думаю, после добавления 4-го набора данных у меня было больше значения по умолчанию maxVisibleCount (что бы это ни было), и когда это происходит, метки данных не отображаются независимо от других настроек.

Я понял это при изменении поля drawValuesEnabled моего набора данных, и внутри текста автозаполнения было сказано, что «это значение игнорируется при достижении maxVisibleCount».

...