Как вывести формулу в excel из графика

Обновлено: 02.07.2024

Информация воспринимается легче, если представлена наглядно. Один из способов презентации отчетов, планов, показателей и другого вида делового материала – графики и диаграммы. В аналитике это незаменимые инструменты.

Построить график в Excel по данным таблицы можно несколькими способами. Каждый из них обладает своими преимуществами и недостатками для конкретной ситуации. Рассмотрим все по порядку.

Простейший график изменений

График нужен тогда, когда необходимо показать изменения данных. Начнем с простейшей диаграммы для демонстрации событий в разные промежутки времени.

Допустим, у нас есть данные по чистой прибыли предприятия за 5 лет:

Год Чистая прибыль*
2010 13742
2011 11786
2012 6045
2013 7234
2014 15605
* Цифры условные, для учебных целей.

Заходим во вкладку «Вставка». Предлагается несколько типов диаграмм:

Вставка-графики и диаграммы.

Выбираем «График». Во всплывающем окне – его вид. Когда наводишь курсор на тот или иной тип диаграммы, показывается подсказка: где лучше использовать этот график, для каких данных.

Выбор типа графиков.

Выбрали – скопировали таблицу с данными – вставили в область диаграммы. Получается вот такой вариант:

Конструктор.

Прямая горизонтальная (синяя) не нужна. Просто выделяем ее и удаляем. Так как у нас одна кривая – легенду (справа от графика) тоже убираем. Чтобы уточнить информацию, подписываем маркеры. На вкладке «Подписи данных» определяем местоположение цифр. В примере – справа.

Подписи данных.

Улучшим изображение – подпишем оси. «Макет» – «Название осей» – «Название основной горизонтальной (вертикальной) оси»:

Название осей.

Заголовок можно убрать, переместить в область графика, над ним. Изменить стиль, сделать заливку и т.д. Все манипуляции – на вкладке «Название диаграммы».

Название диаграмм.

Вместо порядкового номера отчетного года нам нужен именно год. Выделяем значения горизонтальной оси. Правой кнопкой мыши – «Выбрать данные» - «Изменить подписи горизонтальной оси». В открывшейся вкладке выбрать диапазон. В таблице с данными – первый столбец. Как показано ниже на рисунке:

Данные.

Можем оставить график в таком виде. А можем сделать заливку, поменять шрифт, переместить диаграмму на другой лист («Конструктор» - «Переместить диаграмму»).

График с двумя и более кривыми

Допустим, нам нужно показать не только чистую прибыль, но и стоимость активов. Данных стало больше:

Таблица с данными.

Но принцип построения остался прежним. Только теперь есть смысл оставить легенду. Так как у нас 2 кривые.

Легенда.

Добавление второй оси

Как добавить вторую (дополнительную) ось? Когда единицы измерения одинаковы, пользуемся предложенной выше инструкцией. Если же нужно показать данные разных типов, понадобится вспомогательная ось.

Сначала строим график так, будто у нас одинаковые единицы измерения.

Вторая ось.

Выделяем ось, для которой хотим добавить вспомогательную. Правая кнопка мыши – «Формат ряда данных» – «Параметры ряда» - «По вспомогательной оси».

Формат ряда данных.

Нажимаем «Закрыть» - на графике появилась вторая ось, которая «подстроилась» под данные кривой.

Дополнительная ось.

Это один из способов. Есть и другой – изменение типа диаграммы.

Щелкаем правой кнопкой мыши по линии, для которой нужна дополнительная ось. Выбираем «Изменить тип диаграммы для ряда».

Изменение типа.

Определяемся с видом для второго ряда данных. В примере – линейчатая диаграмма.

Линейчатая диаграмма.

Всего несколько нажатий – дополнительная ось для другого типа измерений готова.

Строим график функций в Excel

Вся работа состоит из двух этапов:

  1. Создание таблицы с данными.
  2. Построение графика.

Пример: y=x(√x – 2). Шаг – 0,3.

Составляем таблицу. Первый столбец – значения Х. Используем формулы. Значение первой ячейки – 1. Второй: = (имя первой ячейки) + 0,3. Выделяем правый нижний угол ячейки с формулой – тянем вниз столько, сколько нужно.

Таблица XY.

В столбце У прописываем формулу для расчета функции. В нашем примере: =A2*(КОРЕНЬ(A2)-2). Нажимаем «Ввод». Excel посчитал значение. «Размножаем» формулу по всему столбцу (потянув за правый нижний угол ячейки). Таблица с данными готова.

Отрицательные значения по Y.

Переходим на новый лист (можно остаться и на этом – поставить курсор в свободную ячейку). «Вставка» - «Диаграмма» - «Точечная». Выбираем понравившийся тип. Щелкаем по области диаграммы правой кнопкой мыши – «Выбрать данные».

Выделяем значения Х (первый столбец). И нажимаем «Добавить». Открывается окно «Изменение ряда». Задаем имя ряда – функция. Значения Х – первый столбец таблицы с данными. Значения У – второй.

Изменение ряда.

Жмем ОК и любуемся результатом.

Результат.

Оси подписаны.

Наложение и комбинирование графиков

Построить два графика в Excel не представляет никакой сложности. Совместим на одном поле два графика функций в Excel. Добавим к предыдущей Z=X(√x – 3). Таблица с данными:

2 графика функций.

Выделяем данные и вставляем в поле диаграммы. Если что-то не так (не те названия рядов, неправильно отразились цифры на оси), редактируем через вкладку «Выбрать данные».

А вот наши 2 графика функций в одном поле.

Пример с двумя графиками функций.

Графики зависимости

Данные одного столбца (строки) зависят от данных другого столбца (строки).

Построить график зависимости одного столбца от другого в Excel можно так:

Данные для графиков зависимости.

Условия: А = f (E); В = f (E); С = f (E); D = f (E).

Выбираем тип диаграммы. Точечная. С гладкими кривыми и маркерами.

Выбор данных – «Добавить». Имя ряда – А. Значения Х – значения А. Значения У – значения Е. Снова «Добавить». Имя ряда – В. Значения Х – данные в столбце В. Значения У – данные в столбце Е. И по такому принципу всю таблицу.

Графики зависимости.

Готовые примеры графиков и диаграмм в Excel скачать:

ejenedelnyy-grafik-2-taymfreyma

Как сделать еженедельный график в Excel вместе с ежедневным.
Пример создания динамического синхронного еженедельного графика вместе с ежедневным. Синхронное отображение двух таймфреймов на одном графике.

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

Функция СМЕЩ часто пугает неискушенного пользователя наличием аж пяти аргументов и непонятным назначением. Но в Excel часто встречаются задачи, в которых она проявит себя с самой лучшей стороны и станет незаменимым помощником. Например, когда Вам нужно:

1) Сделать зависимый выпадающий список, в который можно добавлять данные;

2) Добиться того, чтобы новые строки сразу попадали в сводную таблицу при обновлении;

3) Отображать на графике только данные за последние 7 дней, причем новые данные вносятся ежедневно;

4) В списке помесячных продаж за год мгновенно подсчитать сумму с января по март, а потом с февраля по апрель, а потом с сентября по декабрь.

5) В новом столбце сослаться на каждую пятую ячейку соседнего столбца

Как видите, задачи интересные и нетривиальные. Если Вы хотите научиться их решать в два счета, то стоит уделить несколько минут изучению функции СМЕЩ.

Синтаксис и алгоритм работы функции

Функция СМЕЩ умеет возвращать ссылку на диапазон заданного размера (высота и ширина), отстоящий от стартовой ячейки на заданное число строк и столбцов.

Функция имеет следующий синтаксис:

=СМЕЩ(ссылка;смещ_по_строкам;смещ_по_столбцам;[высота];[ширина])

Как видите, у неё есть 5 аргументов:

1) " Ссылка ". Обязательный аргумент. Указывает стартовую ячейку, от которой будет происходить смещение. Здесь можно указать ссылку на ячейку или на диапазон ячеек. Во втором случае смещение будет считаться от левой верхней ячейки диапазона;

2) " Смещ_по_строкам ". Обязательный аргумент. Указывает, на сколько строк нужно сместиться от заданной ячейки. Положительные числа означают смещение вниз, отрицательные - вверх, ноль - без смещения;

3) " Смещ_по_столбцам ". Обязательный аргумент. Указывает, на сколько столбцов нужно сместиться от заданной ячейки. Положительные числа означают смещение вправо, отрицательные - влево, ноль - без смещения;

4) " Высота" . Необязательный аргумент. Высота в строках возвращаемого диапазона. Если опустить - высота будет равна высоте диапазона, указанного в аргументе "Ссылка";

5) " Ширина" . Необязательный аргумент. Ширина в строках возвращаемого диапазона. Если опустить - ширина будет равна ширине диапазона, указанного в аргументе "Ссылка".

На рисунке ниже представлен алгоритм работы.

1) В качестве "Ссылки" задана ячейка B2.

2) От нее происходит смещение на 2 строки вниз (так как число 2 положительное). Мы оказываемся в ячейке B4.

3) Из ячейки B4 происходит смещение на 3 столбца вправо (так как число 3 положительное). В итоге мы попадаем в ячейку E4.

4) Принимая ее за верхнюю левую, выделяем диапазон из 3 строк и 4 столбцов. Результат - диапазон E4:H6.

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

Рассмотрим, как применять формулы и условное форматирование в диаграммах Excel.

Примеры формул в диаграммах

Построим на основе ряда данных простой график с маркерами:

График с маркерами.

Если щелкнуть по любой точке графика, то в строке формул появится функция РЯД. Именно с ее помощью генерируются ряды данных всех диаграмм. Эта функция применяется только для определения значений точек на графиках. Просто использовать ее на рабочем листе невозможно.

Аргументы функции РЯД:

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

Аргументы функции РЯД можно найти и изменить в диалоговом окне «Выбрать данные»:

Выбрать данные.

Выделим элемент легенды «y» и щелкнем по кнопке изменить. В поле «Имя ряда» содержится аргумент функции «Имя»:

Имя.

Название ряда данных – «y». Его можно менять.

В поле «Значения» - аргумент значений ряда данных.

Подписи горизонтальной оси – это аргумент функции РЯД «Подписи категорий»:

Подписи категорий.

Так как наш график построен на основе одного ряда данных, то порядок равняется единице. Данный аргумент отражается в списке «Элементы легенды».

Аргументы функции РЯД допускают применение именованных диапазонов. Если воспользоваться данной возможностью, то можно создать динамическую диаграмму, быстро переключаться между данными одного ряда.

Присмотримся поближе к применению именованных динамических диапазонов при построении диаграмм.

Создание динамических диаграмм

Для имеющейся исходной таблицы с данными создадим именованные диапазоны: для первого столбца – категорий – «х»; для второго – точек данных – «у».

Открываем вкладку «Формулы» - нажимаем кнопку «Диспетчер имен».

Диспетчер имен.

В диалоговом окне жмем «Создать». Откроется окно «Создание имени». В поле «Имя» вводим имя диапазона. В поле «Диапазон» - формулу для ссылки на данные в первом столбце (=СМЕЩ(Лист1!$A$1;1;0;СЧЁТЗ(Лист1!$A$1:$A$20)-1;1)).

Изменение имени.

Чтобы заголовок ряда данных не включался в именованный диапазон, за аргументами функции СЧЕТЗ ставим «-1». В качестве диапазона можно указывать весь столбец А – Excel быстро определяет пустые ячейки. В примере мы поставили лишь первые 20 ячеек.

Создаем именованный диапазон для второго столбца. По такому же принципу.

Создание имени.

Теперь поменяем ссылки на ряд данных в графике именами динамических диапазонов. Вызываем диалоговое окно «Выбор источника данных». Выделяем элемент легенды и нажимаем «Изменить». Меняем ссылки в поле «Значения» на имя диапазона.

Изменение ряда.

Далее жмем «Изменить подписи горизонтальной оси». Задаем для диапазона назначенной имя.

Подписи оси.

График остается прежним. Но если мы добавим в имеющуюся таблицу новые данные, они тут же попадут на диаграмму.

График.

При работе с огромным массивом данных иногда нужно создать диаграмму только на основе некоторого количества последних значений в ряду. Чтобы формула выбирала только их, при формировании динамического именованного диапазона прописываем следующее: =СМЕЩ(Лист1!$A$1;СЧЁТЗ(Лист1!$A$1:$A$1000)-40;0;40;1). По такому же принципу – для столбца В.

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

Условное форматирование в диаграмме

Данный инструмент достаточно просто используется для обычных данных. Для диаграмм в Excel применить встроенное условное форматирование невозможно. Нужно идти другим путем.

Зачем это? Для улучшения восприятия информации. При изменении значений в исходных ячейках автоматически будет меняться цветовое исполнение диаграммы.

Выполнить условное форматирование в диаграммах можно с помощью макросов и формул. Рассмотрим второй способ.

На основании тех же исходных данных составим гистограмму:

Гистограмма.

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

Для условного форматирования требуется формула, которая определяет отформатированные ячейки.

Для каждого условия создадим отдельный ряд данных. Значения в исходной таблице находятся в диапазоне от 0,06 до 5,7. Создадим ряд для периодов 0-0,6; 0,6-1,6; 1,6-3; 3-4,6; 4,6-6.

Сформируем данные для гистограммы с условным форматированием. Диапазон условий внесем в строки 1 и 2. Заголовки – в строку 3. Формулы для заголовков:

Формулы.

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

Диапазоны.

Источник данных для гистограммы – столбцы А и В. Нужно исключить колонку В и добавить вновь созданный диапазон С:F.

Пример.

Теперь столбики диаграммы окрашены в разные цвета в зависимости от значения.

Качественная визуализация большого объема информации – это почти всегда нетривиальная задача, т.к. отображение всех данных часто приводит к перегруженности диаграммы, ее запутанности и, в итоге, к неправильному восприятию и выводам.

Вот, например, данные по курсам валют за несколько месяцев:

interactive-chart1.jpg

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

  • двигаться по оси времени вперед-назад в будущее-прошлое
  • приближать-удалять отдельные области диаграммы для подробного изучения деталей графика
  • включать-выключать отображение отдельных валют на выбор

Выглядеть это может примерно так:

Нравится? Тогда поехали.

Шаг 1. Создаем дополнительную таблицу для диаграммы

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

interactive-chart2.jpg

В Excel 2007/2010 к созданным диапазонам можно применить команду Форматировать как таблицу ( Format as Table) с вкладки Главная ( Home) :

interactive-chart3.jpg

Это даст нам следующие преимущества:

  • Любые формулы в таких таблицах автоматически транслируются на весь столбец – не надо «тянуть» их вручную до конца таблицы
  • При дописывании к таблице новых строк в будущем (новых дат и курсов) – размеры таблицы увеличиваются автоматически, включая корректировку диапазонов в диаграммах, ссылках на эту таблицу в других формулах и т.д.
  • Таблица быстро получает красивое форматирование (чересстрочную заливку и т.д.)
  • Каждая таблица получает собственное имя (в нашем случае – Таблица1 и Таблица2), которое можно затем использовать в формулах.

Подробнее про преимущества использования подобных Таблиц можно почитать тут.

Шаг 2. Добавляем флажки (checkboxes) для валют

В Excel 2007/2010 для этого необходимо отобразить вкладку Разработчик ( Developer) , а в Excel 2003 и более старших версиях – панель инструментов Формы ( Forms) . Для этого:

  • В Excel 2003: выберите в меню Вид – Панели инструментов – Формы (View –Toolbars –Forms)
  • В Excel 2007: нажать кнопку Офис – ПараметрыExcel – Отобразить вкладку Разработчик на ленте (OfficeButton –Exceloptions –ShowDeveloperTabintheRibbon)
  • В Excel 2010: Файл – Параметры – Настройка ленты – включить флаг Разрабочик (File –Options –CustomizeRibbon –Developer)

На появившейся панели инструментов или вкладке Разработчик ( Developer) в раскрывающемся списке Вставить ( Insert) выбираем инструмент Флажок ( Checkbox) и рисуем два флажка-галочки для включения-выключения каждой из валют:

interactive-chart4.jpg

Текст флажков можно поменять, щелкнув по ним правой кнопкой мыши и выбрав команду Изменить текст ( Edit text) .

interactive-chart5.jpg

Теперь привяжем наши флажки к любым ячейкам для определения того, включен флажок или нет (в нашем примере это две желтых ячейки в верхней части дополнительной таблицы). Для этого щелкните правой кнопкой мыши по очереди по каждому добавленному флажку и выберите команду Формат объекта ( Format Control) , а затем в открывшемся окне задайте Связь с ячейкой ( Cell link) .

Шаг 3. Транслируем данные в дополнительную таблицу

Теперь заполним дополнительную таблицу формулой, которая будет транслировать исходные данные из основной таблицы, если соответствующий флажок валюты включен и связанная ячейка содержит слово ИСТИНА (TRUE):

interactive-chart6.jpg

Заметьте, что при использовании команды Форматировать как таблицу ( Format as Table) на первом шаге, формула имеет использует имя таблицы и название колонки. В случае обычного диапазона, формула будет более привычного вида:

Обратите внимание на частичное закрепление ссылки на желтую ячейку (F$1), т.к. она должна смещаться вправо, но не должна – вниз, при копировании формулы на весь диапазон.

Шаг 4. Создаем полосы прокрутки для оси времени и масштабирования

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

Полосу прокрутки ( Scroll bar) берем там же, где и флажки – на панели инструментов Формы ( Forms) или на вкладке Разработчик ( Developer) :

interactive-chart7.jpg

Рисуем на листе в любом подходящем месте одну за другой две полосы – для сдвига по времени и масштаба:

interactive-chart8.jpg

Каждую полосу прокрутки надо связать со своей ячейкой (синяя и зеленая ячейки на рисунке), куда будет выводиться числовое значение положения ползунка. Его мы потом будем использовать для определения масштаба и сдвига. Для этого щелкните правой кнопкой мыши по нарисованной полосе и выберите в контекстном меню команду Формат объекта ( Format control) . В открывшемся окне можно задать связанную ячейку и минимум-максимум, в пределах которых будет гулять ползунок:

interactive-chart9.jpg

Таким образом, после выполнения всего вышеизложенного, у вас должно быть две полосы прокрутки, при перемещении ползунков по которым значения в связанных ячейках должны меняться в интервале от 1 до 307.

Шаг 5. Создаем динамический именованный диапазон

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

  • Отступом от начала таблицы вниз на заданное количество строк, т.е. отступом по временной шкале прошлое-будущее (синяя ячейка)
  • Количеством ячеек по высоте, т.е. масштабом (зеленая ячейка)

Этот именованный диапазон мы позже будем использовать как исходные данные для построения диаграммы.

Для создания такого диапазона будем использовать функцию СМЕЩ ( OFFSET) из категории Ссылки и массивы ( Lookup and Reference) - эта функция умеет создавать ссылку на диапазон заданного размера в заданном месте листа и имеет следующие аргументы:

interactive-chart19.jpg

В качестве точки отсчета берется некая стартовая ячейка, затем задается смещение относительно нее на заданное количество строк вниз и столбцов вправо. Последние два аргумента этой функции – высота и ширина нужного нам диапазона. Так, например, если бы мы хотели иметь ссылку на диапазон данных с курсами за 5 дней, начиная с 4 января, то можно было бы использовать нашу функцию СМЕЩ со следующими аргументами:

interactive-chart10.jpg

Хитрость в том, что константы в этой формуле можно заменить на ссылки на ячейки с переменным содержимым – в нашем случае, на синюю и зеленую ячейки. Сделать это можно, создав динамический именованный диапазон с функцией СМЕЩ ( OFFSET) . Для этого:

  • В Excel 2007/2010 нажмите кнопку Диспетчер имен (NameManager) на вкладке Формулы (Formulas)
  • В Excel 2003 и старше – выберите в меню Вставка– Имя– Присвоить(Insert – Name – Define)

Для создания нового именованного диапазона нужно нажать кнопку Создать ( Create) и ввести имя диапазона и ссылку на ячейки в открывшемся окне.

Сначала создадим два простых статических именованных диапазона с именами, например, Shift и Zoom, которые будут ссылаться на синюю и зеленую ячейки соответственно:

interactive-chart11.jpg
interactive-chart12.jpg

Теперь чуть сложнее – создадим диапазон с именем Euros, который будет ссылаться с помощью функции СМЕЩ ( OFFSET) на данные по курсам евро за выбранный отрезок времени, используя только что созданные до этого диапазоны Shift и Zoom и ячейку E3 в качестве точки отсчета:

interactive-chart13.jpg

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

Аналогичным образом создается именованный диапазон Dollars для данных по курсу доллара:

interactive-chart14.jpg

И завершает картину диапазон Labels, указывающий на подписи к оси Х, т.е. даты для выбранного отрезка:

interactive-chart15.jpg

Общая получившаяся картина должна быть примерно следующей:

interactive-chart16.jpg

Шаг 6. Строим диаграмму

Выделим несколько строк в верхней части вспомогательной таблицы, например диапазон E3:G10 и построим по нему диаграмму типа График ( Line) . Для этого в Excel 2007/2010 нужно перейти на вкладку Вставка ( Insert) и в группе Диаграмма ( Chart) выбрать тип График ( Line) , а в более старших версиях выбрать в меню Вставка – Диаграмма ( Insert – Chart) . Если выделить одну из линий на созданной диаграмме, то в строке формул будет видна функция РЯД ( SERIES) , обслуживающая выделенный ряд данных:

interactive-chart18.jpg

Эта функция задает диапазоны данных и подписей для выделенного ряда диаграммы. Наша задача – подменить статические диапазоны в ее аргументах на динамические, созданные нами ранее. Это можно сделать прямо в строке формул, изменив

=РЯД(Лист1!$F$3;Лист1! $E$4:$E$10 ;Лист1! $F$4:$F$10 ;1)

=РЯД(Лист1!$F$3;Лист1! Labels ;Лист1! Euros ;1)

Выполнив эту процедуру последовательно для рядов данных доллара и евро, мы получим то, к чему стремились – диаграмма будет строиться по динамическим диапазонам Dollars и Euros, а подписи к оси Х будут браться из динамического же диапазона Labels. При изменении положения ползунков будут меняться диапазоны и, как следствие, диаграмма. При включении-выключении флажков – отображаться только те валюты, которые нам нужны.

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

Читайте также: