Раскрашиваем линии графика по условию

Раскрашиваем линии графика по условию



Признаюсь в слабости. Утром, когда готовлю кофе, смотрю минут пять деловые новости. Сегодня обратил внимание на то, что время от времени на экране появляются графики, которые раскрашиваются в разные цвета, в зависимости от того, было падение за период или нет. Задумался, а  может ли Excel раскрашивать линию в другой цвет по условию. Ответ: нет. Но есть приём, который позволяет всё-таки использовать разный цвет линий в зависимости от условия.





В качестве эксперимента привожу не свой текст, а автоматическое конспектирование при помощи ИИ на сервисе MyMeet.ai

# Условное окрашивание линий графика в Excel

## Введение

В Excel нельзя применить условное форматирование непосредственно к отдельным участкам линии графика. Вместо этого данные разделяют на несколько рядов, каждый из которых отображает значения только при заданном условии; так положительные и отрицательные участки можно оформить разными цветами.

## Ключевые слова

Excel, линейный график, условное форматирование, функция ЕСЛИ, функция НД(), вспомогательные ряды, положительные и отрицательные значения

## Графики и отображение положительных и отрицательных результатов (0:00–1:34)

На примере деловых графиков показана распространённая цветовая схема: отрицательный результат выделяют красным, положительный — зелёным. В качестве примера упомянут график акций «Яндекса»: за месяц их стоимость, по приведённым словам, снизилась на 58 рублей, или на 1,6; единица для второго значения в транскрипте не уточнена.

В Excel нельзя настроить условное форматирование линии так же, как условное форматирование ячеек. Для цветового разделения нужно создать отдельные ряды данных: один для положительных значений, другой для отрицательных.

## Подготовка данных и признака для выбора цвета (1:34–3:42)

Для примера используются основные данные, значения в диапазоне от 100 до 1000 и отдельный признак, по которому определяется, к какому ряду отнести значение. Данные протягиваются вправо. Имя функции, использованной для генерации исходных значений, в транскрипте распознано неразборчиво.

Для положительного ряда применяется функция `ЕСЛИ`: если признак больше нуля, формула возвращает исходное значение; иначе возвращается ошибка `НД()`:

=ЕСЛИ(признак>0; значение; НД())


Ссылку на ячейку с признаком закрепляют знаками `$`, чтобы при копировании формулы по горизонтали она продолжала ссылаться на нужную строку или ячейку.

Для отрицательного ряда используется аналогичная проверка:

=ЕСЛИ(признак<0; значение; НД())

## Почему для неподходящих значений используется ошибка НД() (3:42–6:30)

Функция `НД()` создаёт значение ошибки `#Н/Д`. В данном случае это намеренно: графики не отображают линии для значений, представленных этой ошибкой. Поэтому каждая серия показывает только те точки, которые соответствуют её условию.

Если вместо ошибки подставить `0`, график построит линию на нулевом уровне. Её пришлось бы отдельно скрывать, например делать прозрачной. Использование `НД()` позволяет не строить лишние участки линии.

## Построение и оформление рядов (5:28–7:59)

После подготовки значений строят график на основе отдельных рядов. Положительный ряд содержит данные только там, где признак больше нуля; отрицательный — только там, где признак меньше нуля. Неподходящие для каждого ряда точки исключаются с помощью `НД()`.

При изменении данных клавишей `F9` график пересчитывается: участки переходят между рядами в зависимости от знака значения. В процессе демонстрации положительный ряд сначала отображался синим, отрицательный — рыжим; затем положительному ряду назначили зелёный контур. Итоговая задумка — выделять положительные участки зелёным, отрицательные красным.

Нулевое значение маловероятно, но возможно. Для него предусмотрено отдельное нейтральное отображение серым цветом. В качестве примера упомянута ситуация, когда значения в январе и ноябре равны 100: соответствующий нулевой участок отображается серым.

## Основной приём (8:10)

Вместо условного форматирования линии графика используются отдельные ряды, сформированные по условию. Функция `ЕСЛИ` распределяет значения по рядам, а `НД()` исключает неподходящие точки из построения.

## Заключение

Для окрашивания положительных и отрицательных участков графика в разные цвета создают отдельные серии и отбирают значения формулами `ЕСЛИ` с проверкой знака. Функция `НД()` предотвращает появление лишней линии на нулевом уровне, а нулевые значения можно показывать отдельным серым рядом. Домашние задания и ссылки не упомянуты.

Возврат к списку