Графическое представление и визуализация больших данных в Excel
Как сделать правильное графическое представления большого объема данных для комфортного проведения визуального анализа в Excel? Используя средства программы Excel создадим собственные инструменты для выборочного масштабирования данных и визуальной навигации по данным в истории продаж за большой период.
Подготовка больших данных к графическому представлению и визуализации
Перед тем как приступить к графическому представлению для визуализации больших данных на динамическом графике в Excel, сначала смоделируем ситуацию. На пример, у нас есть статистический отчет ежемесячных продаж по трем видам товаров на протяжении 3-х лет (2019-2021 год). Расположите исходную таблицу отчета в диапазоне ячеек B9:F45, как показано ниже на рисунке:

Необходимо построить гистограмму с накоплением для одновременного отображения показателей количественных продаж по трем группам товаров и их итогового суммарного значения.
Но сначала подготовим исходные данные таблицы. По оси X на графике лучше будут читаться названия месяцев вместо дат. Поэтому между первым «Дата» (B) и втором «Товар 1» (C) столбцом таблицы вставим дополнительный столбец с названием «Месяц» который в своих ячейках будет содержать формулу:

Данная формула состоит из 4-х функций и 3-х частей:
- Формула функций ВЫБОР и МЕСЯЦ позволяет нам преобразовать дату в название месяцев сокращенное до трех букв.
- Функция СИМВОЛ с числом 10 в ее аргументе позволяет нам добавить к текстовому значению символ обрыва строки для переноса текста подписей значений на осе X, который должен уместится под каждым столбцом гистограммы.
- Функция ГОД извлекает из исходных дат значения годов которые будут добавлены к месяцам в подписях оси X, чтобы не путаться к которому году относится тот или иной месяц.
Кроме оформления подписей оси X нам еще необходимо добавить на график подписи итоговых значений. Поэтому нужно добавить еще один столбец «ИТОГО» к исходной таблицы с формулой суммирования показателей всех 3-х видов товаров по каждому месяцу:

Теперь непосредственно переходим к самому построению графика для графического представления и визуализации данных отчета.
Создание визуальной навигации по большим данным в Excel
Для создания отчета в графическом виде выделите не все значения таблицы, а только лишь начиная со второго и по пятый столбец (диапазон ячеек C9:F45) и выберите инструмент «ВСТАВКА»-«Диаграммы»-«Гистограмма с накоплением»:

Как видно выше на рисунке такой способ графического представления данных большого объема не лучшее решение для визуализации. При том что для примера мы было взято показатели за 3 года. А если нужно за 10 лет и с показателями ежедневных продаж? В таком случае нужно сделать отдельный график с возможностью отображения за указанные период времени. Сделаем все удобно и красиво максимально используя все возможности программы Excel.
Несмотря на то что созданный нами график не совсем нам подходит мы будем иго использовать в качестве временной шкалы для удобства. Укажите ему новые размеры в дополнительном меню: «РАБОТА С ДИАГРАММАМИ»-«ФОРМАТ»-«Размер» высота – 4см и ширина – 34,93 см (такая ширина соответствует 1320 пикселям). А затем просто разместите его над исходной таблицей:

Далее продолжаем настраивать внешний вид шкалы-графика. Удалите все лишние элементы нажав на кнопку плюс «+» с правой стороны графика где в выпадающем меню «ЭЛЕМЕНТЫ ДИАГРАММЫ» следует снять все лишние галочки и отметить необходимые согласно рисунку:

Далее, чтобы настроить внешний вид отображаемых столбцов гистограммы, щелкните правой кнопокой мышки по люому ряду и из появившегося контекстного меню выберите опцию «Формат ряда данных». Затем переходим в «ПАРАМЕТРЫ РЯДА» и измеянем значение в опции «Боковой зазор» на 80%. Там же щелкаем на кнопку «Заливка» и указываем желаемый цвет:

Цвета заливки изменяем отдельно для каждого ряда.
С помощью фигуры прямоугольника создадим курсор для временной шкалы-графика. Выберите инструмент «ВСТАВКА»-«Иллюстрации»-«Фигуры»-«Прямоугольник»:

Убираем заливку и устанавливаем черный цвет контура с толщиной 2 пункта для фигуры прямоугольника используя инструмент из ее дополнительного меню «СРЕДСТВА РИСОВАНИЯ»-«ФОРМАТ»-«Стили фигур»-«Заливка фигуры» и здесь же «Контур фигуры».
Сначала с правой, а потом с левой стороны курсора создадим еще 2 белых полупрозрачных прямоугольника которые будут закрывать остальную часть шкалы. Это позволит экспонировать значения графика в пределах курсора для навигации по данным:

Кликнув правой кнопкой мышки по новому прямоугольнику выбираем из контекстного меню опцию «Формат фигуры». В появившемся окне настройки параметров фигуры изменяем цвет заливки на белый и здесь же устанавливаем «Прозрачность» - 25%. В разделе опций «ЛИНИЯ» отмечаем «Нет линий».
Элементы управления графическим представлением и визуализацией данных
Навигационный курсор для шкалы – создан, теперь создаем элементы управления. Описание технического задания для функционирования курсора навигации:
- Данный курсор будет уметь изменять свою ширину вмещая в себя показатели за минимум 3 и максимум 12 месяцев. Поэтому следует создать элемент управления для изменения размера курсора.
- Сам курсор не будет перемещаться по шкале, а вместо этого будет смещаться сама шкала относительно курсора. Создадим еще один элемент для перемещения шкалы под курсором.
Выберите инструмент: «РАЗРАБОТЧИК»-«Элементы управления»-«Вставить»-«Счетчик» и возле таблицы разместите его:

Из контекстного меню счетчика выбираем опцию «Формат объекта» где на вкладке «Элемент управления» изменяем следующие 3 параметра:
Минимальное значение: 3 – это минимальное количество столбов месяцев на гистограмме-шкале, которые сможет охватывать курсор на шкале, чтобы передать их на большой график.
Максимальное значение: 12 – максимум столбцов месяцев, которые будет охватывать курсор.
Связь с ячейкой: $R$11 – ссылка на ячейку, в которую будет передавать элемент управления счетчик свои текущие числовые значения 3-12.
Аналогичным образом создаем второй элемент управления шкалой выбрав инструмент: «РАЗРАБОТЧИК»-«Элементы управления»-«Вставить»-«Полоса прокрутки». Разместите второй элемент - полосу прокрутки графика возле счетчика под шкалой:

И снова из контекстного меню полосы прокрутки выбираем опцию «Формат объекта» где на вкладке «Элемент управления» изменяем следующие 3 параметра:
Минимальное значение: 0 – это конечная позиция положения временной шкалы, то есть крайнее левое положение.
Максимальное значение: 33 – это число для перемещения курсора при минимальном его размере с охватом в 3 месяца (столбца) для общего количества столбцов (месяцев) на протяжении 3-х лет. То есть: 36-3=33.
Связь с ячейкой: $R$10 – ссылка на ячейку, в которую будет передавать полоса прокрутки свои текущие числовые значения 0-33.
Внимание! Рядом с этой же ячейкой R10 вписываем формулу =33-R10 в ячейке S10. Значения данной ячейки будут использоваться в коде написанных VBA-макросов для оживления шкалы с помощью элементов управления:

Элементы управления шкалой и курсором – созданы. Осталось написать программу макрос для функционирования данной конструкции.
VBA-макрос для интерактивного графического представления с визуализацией данных
Чтобы оживить нашу временную шкалу вместе с курсором создаем макрос. Выберите инструмент: «РАЗРАБОТЧИК»-«Код»-«Visual Basic» (или нажмите комбинацию клавиш Alt+F11), чтобы прейти в редактор макросов. Там в первую очередь следует создать модуль, в который следует поместить следующий код двух макросов:

Код макроса можно скопировать из блока ниже:
Sub linerange_size()
Dim list As Worksheet
Dim linewindow As Shape
Dim lineright As Shape
Set list = Sheets("Лист1")
Set linewindow = list.Shapes("Прямоугольник 1")
Set lineright = list.Shapes("Прямоугольник 2")
With linewindow
.Width = 27 * ActiveSheet.Range("R11").Value
End With
With lineright
.Left = linewindow.Left + linewindow.Width
End With
End Sub
Sub movgchart()
Dim grafik1 As ChartObject
Dim list As Worksheet
Set list = Sheets("Лист1")
Set grafik1 = list.ChartObjects("Диаграмма 1")
With grafik1
.Left = ActiveSheet.Range("S10").Value * 27
End With
End Sub
Теперь осталось лишь назначить макросы элементам. Кликаем по каждому элементу правой кнопкой мышки и из контекстного меню выбираем опцию «Назначить макрос» для счетчика – linerange_size, а для полосы прокрутки – movgchart.
Перед тем как использовать элементы управления следует подогнать размер доступного пространства для смещения шкалы влево с помощью изменением ширины первого столбца A на рабочем листе Excel:

Только после этого можно воспользоваться элементами управления шкалой и ее курсором.
Масштабирование в графическом представлении с визуализацией в Excel
Теперь наша задача передать в увеличенном формате (как бы приближенно) только ту информацию, которую охватывает курсор на временной шкале гистограммы. Для этого мы будем создавать новую динамическую гистограмму с большим размером столбцов. Но, как и для всех динамических диаграмм, сначала нужно создать имена (именные диапазоны Excel) с формулами, которые послужат динамически изменяемым источником данных для гистограммы.
Для создания именных диапазонов с формулами выберите инструмент: «ФОРМУЛЫ»-«Определенные имена»-«Диспетчер имен». В нем с помощью кнопки создать создаем сразу 4 имени с разными формулами для разных источников данных будущей второй большой гистограммы:

Каждое из 4-х имен является ссылкой на динамически изменяемый формулой диапазон ряда данных гистограммы:
- Месяцы – значения оси X, формула:
- Товар1 – значения для нижнего (зеленого) ряда данных, формула:
- Товар2 – значения среднего (серого) ряда, формула:
- Товар3 – значения для верхнего (оранжевого) рада, формула:
- Итого – значения для подписей столбцов гистограммы, формула:
Теперь переходим непосредственно к процессу построения второй большой гистограммы, которая будет выводить данные курсора в увеличенном виде.
Выделите диапазон ячеек таблицы C9:G12 (2-6 столбцы и несколько строк) и выберите инструмент: «ВСТАВКА»-«Диаграммы»-«Гистограмма с накоплением». А затем в дополнительном меню «РАБОТА С ДИАГРАММАМИ»-«КОНСТРУКТОР»-«Данные» жмем на кнопку «Строка/столбец» чтобы получилось так:

Теперь необходимо добавить подписи данных. Для этого необходимо одним кликом выделить только верхний четвертый ряд «ИТОГО». А дальше нажать на кнопку плюс «+» возле графика (справа) и в выпадающем меню «ЭЛЕМЕНТЫ ДИАГРАММЫ» отметить опцию «Подписи данных»:

Не снимая выделения с верхнего ряда выбираем инструмент «РАБОТА С ДИАГРАММАМИ»-«ФОРМАТ»-«Стили фигур»-«Заливка»-«Нет заливки» и где, чтобы скрыть его с виду. А остальные ряды закрашиваем цветами заливки так же, как и первый график, в том же стиле:

Далее переходим к самой главной части этого большого графика. Выберите инструмент: «РАБОТА С ДИАГРАММАМИ»-«КОНСТРУКТОР»-«Выбрать данные»:

Сначала в правом разделе «Подписи горизонтальной оси (категории)» нажимаем на кнопку «Изменить» и изменяем значение в поле ввода «Диапазон подписей оси:» на ссылку именного диапазона (обязательно указываем как внешнюю по правилу работы с источниками данных для диаграммам) =Лист1!Месяцы.
Затем в левом разделе «Элементы легенды (ряды)» кликаем по каждому ряду и для каждого нажимаем на кнопку «Изменить», чтобы изменять второе поле ввода «Значения:» на ссылки имен соответственные названиям рядов. Так же указываем как внешние ссылки на имена, например: =Лист1!Товар1.
После всех изменений жмем на кнопку ОК и наслаждаемся динамическими изменениями второго большого графика в соответствии с изменениями в области курсора.
Визуальная навигация по данным таблицы Excel
И на конец для полной читабельности и визуального представления данных создадим еще курсор для таблицы. Этот курсор будет также соответствовать значениям, отображаемым на графике. Он будет иметь возможность изменять свой размер (диапазон) охвата и перемещаться при использовании тех же самых элементов управления.
Для решения данной задачи воспользуемся условным форматированием и логической формулой. Выделите диапазон табличной части исходных данных =B10:G45 и выберите инструмент: «ГЛАВНАЯ»-«Условное форматирование»-«Создать правило». В появившемся окне «Создание правила форматирования» отмечаем опцию «Использование формул для определения форматируемых ячеек» и в поле ввода вводим формулу:

Затем жмем на кнопку «Формат» и задаем желаемый формат оформления цвета ячеек и текста. После нажатия на кнопку ОК на всех открытых окнах наслаждаемся готовым результатом:

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