понедельник, 7 апреля 2014 г.

Создание линейных графиков (Диаграмма XY) при помощи мастера диаграмм в LibreOffice Calc

Продолжая тему предыдущих статей я хотел объединить «Диаграммы XY» и «Линии», так как они очень похожи. Но из-за объёма получившегося материала пришлось разделить. Поэтому эта статья посвящена только «Диаграммам XY».

Линейные графики

Линейные графики в мастере диаграмм LibreOffice Calc разделены на 2 группы. Это позволяет на уровне мастера отсечь лишние настройки, и думать только о формировании самой диаграммы. К первой группе относятся графики, в которых каждое следующее значение Y продвигается на один фиксированный шаг по оси X, при этом в мастере они имеют название «Линии», хотя включают в себя также и графики с маркерами. Эта группа графиков чаще используется при финансовом анализе и позволяет формировать временные модели экономических показателей. Вторая группа позволяет задавать значения оси X явно, в том числе и отрицательные, и поэтому чаще используется при статистическом анализе и построении математических моделей. Эта группа названа в мастере «Диаграммы XY». Начнем мы обсуждать эти графики с группы «Диаграммы XY» подраздела «Только линии». Причин этому несколько:

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

Создание простого графика «Диаграмма XY»

Если говорить о структуре самого графика «Диаграммы XY» в LibreOffice Calc, то это обычная декартова плоскость с бесконечно продолжающимися линиями. Для наглядности первый пример построим на основе параболы. Наша таблица будет выглядеть так:

Таблица для создания простой диаграммы XY в LibreOffice Calc

В нашем случае X взят от -2 до 2 с шагом 0,2 , а Y равен X в квадрате минус 1.
Давайте построим график этой параболы. Для этого выделим диапазон B2:V3 и запустим мастер диаграмм. В открывшемся окне выберем пункт «Диаграммы XY» и третью иконку слева - «Только линии». На этом шаге мы больше ничего делать пока не будем, перейдем к следующему.

Скриншот мастера диаграмм в LibreOffice Calc. Шаг первый.

На втором шаге нам нужно поправить работу мастера. По умолчанию он считает, что у нас вертикальна таблица, но наши значения располагаются в строках, поэтому нам нужно выбрать «Ряды данных в строках». Если мы отодвинем окно мастера в сторону, то увидим, что график принял форму параболы. Перейдем к третьему шагу.

Скриншот мастера диаграмм в LibreOffice Calc. Шаг третий

На третьем шаге мы видим уже знакомые нам поля. Отличительной чертой будет три диапазона в поле «Диапазоны данных»: «Название», «Значение X» и «Значение Y», которые заполняются соответственно. Поле «Подписи данных» в LibreOffice Calc по умолчанию не показываются на диаграмме, и его действительно необходимо заполнять, в том случае, если нам нужно подписать координаты точек через которые будет проходить линия. Отображение этих значений можно настроить в редакторе диаграмм выбрав «Вставка» → «Подписи данных...». Мы не будем здесь ничего трогать и перейдем к следующему шагу. На шаге четыре мы опять же видим уже знакомые нам поля. Давайте заполним «Заголовок», названия осей, снимем галочку «Показывать легенду» и поставим отображать сетку «Ось X». Нажмем «Готово».
Мы получим простейший график, изображающий математическую функцию:

Построение графика параболы при помощи Диаграммы XY в LibreOffice Calc

Сортировка по значению X

Сортировку по значению X при построении линейной диаграммы в LibreOffice Calc можно разобрать на следующем примере. Допустим мы проводим исследования и делаем выборку случайным образом из множества всех имеющихся значений. Мы не будем обсуждать здесь свойства множеств и способы как их задавать. Упростим пример для того, чтобы показать работу функции «Сортировать по значению X» мастера. Наша таблица с выборкой соответствующих значений Y будет выглядеть так:

Таблица для сортировки по значению X Диаграммы XY в LibreOffice Calc

Выделим диапазон B3:V4 и запустим мастер диаграмм. На первом шаге выберем пункт «Диаграммы XY» и третью иконку слева - «Только линии», и пока, чтобы мы могли проследить результаты, перейдем ко второму шагу. На этом шаге выставим значение в «Ряды данных в строках». Пропустим третий шаг, потому что он такой же, как и в предыдущем примере. А на четвертом шаге в «Заголовке» укажем: «Выборка значений из множества» и снимем галочку «Показывать легенду». Если мы отодвинем окно мастера, то увидим диаграмму больше похожую на рисунок двухлетнего ребенка. Вернемся к первому шагу и поставим галочку напротив «Сортировать по значению X». Теперь мы имеем график гиперболы и можем делать какие-то выводы.

Создание графика гиперболы при помощи Диаграммы XY в LibreOffice Calc

Сглаживание линий графика

Для сглаживания линий графика в LibreOffice Calc можно использовать один из двух способов: Кубический сплайн и B-сплайн. Я думаю, что различию двух этих способов можно уделить не одну статью. Но наша задача научиться строить графики, поэтому, я ограничусь рекомендациями по использованию.
Кубический сплайн даёт сглаживание более жесткое, но более предсказуемое, если мы не очень сильны в математике, и наша цель сделать просто аккуратный график, он нам подходит. Если не вдаваться в подробности, то на линии между основными узлами выставляются дополнительные узлы, по которым и делается искривление. Это позволяет добиться плавного изгиба линии, сгладив углы. Этот тип стоит применять, если наши исследуемые значения стоят далеко друг от друга и имеют резкие перепады.
B-сплайн позволяет придать линии более аэродинамический вид. Использовать его при экономических расчетах не имеет особого смысла. Но если нам нужно показать, например, срез детали, или мы исследуем физическую функцию, значения которой нужно сгладить, то этом метод становится предпочтительным. Объяснить используемые параметры для этого сглаживания в мастере диаграмм «на пальцах» я, к сожалению, не смогу. Думаю, грамотнее будет воспользоваться для изучения вопроса сглаживания специализированной математической литературой.
Предлагаю разобрать пример сглаживания на синусоиде, где будут заданы только вершины функции. Таблица имеет следующий вид:

Таблица для синусоиды в LibreOffice Calc

Для того, чтобы её быстро создать, заполним значения для строки X от B2 до N2. В ячейку B3 введём формулу =SIN(B2) и протянем её до N3.
Выделим диапазон B2:N3 и запустим мастер диаграмм. На первом шаге выберем пункт «Диаграммы XY» и третью иконку слева - «Только линии», и пока, чтобы мы могли проследить результаты, перейдем ко второму шагу. На втором шаге выберем «Ряды данных в строках». И теперь, если мы отодвинем окно мастера в сторону, то увидим график в виде пилы. Понятно, что функция синуса не может иметь такого вида. Вернёмся к первому шагу, и в выпадающем списке «Тип линии» выберем «Сгладить».

Скриншот окна мастера диаграмм LibreOffice Calc показывающий включение функции сглаживания

После этого кнопка «Свойства...» станет активна, и мы сможем настроить сглаживание. Нажав на неё мы увидим следующее окно:

Скриншот окна сглаживание линии в LibreOffice Calc


В меню «Тип линий» мы можем выбрать тип сглаживания «Кубический сплайн» или «B-сплайн». «Разрешение» позволяет задать нам количество дополнительных узлов между основными. Это делает линию более плавной. Обычно значения по умолчанию достаточно. «Степень полинома» доступна только для B-сплайнов, так как при кубическом сплайне не имеет смысла. В данном окне значения по умолчанию для большинства случаев подобраны адекватно. Поиграться ими можно, но не понимая точного математического значения этих величин, максимум можно просто сделать график более симпатичным, но и только. Оставим в этом меню всё по умолчанию. Как вы, наверное, уже понимаете, на третьем шаге нам особо делать нечего. Поэтому мы перейдём сразу к четвертому. На четвёртом шаге мы снимем галочку с показать легенду, заполним заголовок. И нажмём «Готово».

График синусоиды построенный при помощи диаграммы XY в LibreOffice Calc

На этом графике мы можем настроить ось X. Но, я думаю, в настоящее время для нас более важно убедиться в правильности линии создаваемой при сглаживании. Я сделал отдельный график синусоиды с шагом по X 0,01 и наложил графики друг на друга. Если учесть, что значения по X мы указывали приблизительно, то по-моему, соответствие линии для простых функций достаточно приемлемое.

Наложение графиков синусоид в LibreOffice Calc

Ступенчатый график

Показать ступенчатый график диаграммы XY в LibreOffice Calc, наверное, лучше на примере формы выходного напряжения UPS 220V. На нём можно разобрать все особенности построения этой диаграммы. Для того, чтобы нам построить график, давайте создадим таблицу следующего вида:

Таблица выходного напряжения UPS 220V создания ступенчатой диаграммы в LibreOffice Calc

Выделим диапазон B2:L3 и запустим мастер диаграмм. На первом шаге выберем «Диаграммы XY» и «Только линии». В меню «Тип линии» укажем «Ступенчатая». И для того, чтобы была возможность видеть изменения на диаграмме, перейдём на второй шаг. На этом шаге нам нужно указать «Ряды данных в строках». Теперь вернёмся на первый шаг и разберём настройки ступеней графика.

Скриншот окна настройки ступенчатых линий в LibreOffice Calc

Нажав на «Свойства...» мы увидим диалоговое окно «Ступенчатые линии» с выбором вида шага. Смысл их в следующем:
  • «Начать с горизонтальной линии» - делает линию по горизонтали, а затем поднимается /опускается к точке;
  • «Закончить горизонтальной линией» - соответственно сначала поднимается/опускается до уровня, а затем рисует горизонтальную линию в направлении точки;
  • «Шаг в горизонтальном направлении» - делит горизонтальное расстояние пополам, чертит линию в направление точки по горизонтали, потом поднимается/опускается до её уровня и проходит в горизонтальном направлении оставшуюся часть;
  • «Шаг в вертикальном направлении» - делает тоже самое, что и предыдущий, но делит пополам вертикальное направление, поэтому мы видим на графике пол шага вверх/вниз, потом горизонтальное направление, а затем остаток шага вверх/вниз.
Для того, чтобы выбор вступил в силу, нам нужно нажать «Да». Только после этого диаграмма изменит свой вид. По умолчанию выбирается «Шаг в вертикальном направлении», поэтому, к этому диалоговому окну приходится обращаться достаточно часто.
Как вы, наверное, уже поняли, для нашего примера подойдёт пункт «Начать с горизонтальной линии». Поэтому, выберем его и нажмём «Да». На четвёртом шаге мы укажем название диаграммы, заполним названия осей и снимем галочку «Показать легенду». Нажмём кнопку «Готово».
В этой диаграмме, для более аккуратного вида желательно настроить ось X. Для этого в редакторе диаграмм щёлкнем правой клавишей мыши на оси X и в контекстном меню выберем пункт «Формат оси...». На вкладке «Масштабирование» снимем галочку с пунктов «Максимум» и «Основной интервал» и проставим значения 28 и 2 соответственно. Теперь зайдём на вкладку «Числа» и уберём десятичный знак, так как он нам тут не нужен. Для этого снимем галочку «Исходный формат» и выберем в поле «Формат» представление целыми числами. Нажмем «Да». Теперь у нас получился симпатичный график меандра с паузой.

Ступенчатая диаграмма в LibreOffice Calc отображающая выходное напряжение UPS 220V

Диаграмма XY «Только точки»

Не редко в исследованиях приходится строить диаграмму рассеивания (разброса) или, как иногда это называют, облако данных. Для этого в LibreOffice Calc есть тип диаграммы XY «Только точки». По сути, это всё та же линейная диаграмма, на которой присутствуют только узлы линии, а сама линия отсутствует. Составим таблицу зависимости выбросов CO2 от доли электроэнергии, производимой от возобновляемых источников (исключая гидроэлектростанции) для Евросоюза. Данные для таблицы взяты из базы данных The World Bank:World Development Indicators. Таблица будет выглядеть следующим образом:

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

Выделим диапазон B3:C30 и запустим мастер диаграмм. На первом шаге нам нужно выбрать «Диаграмма XY» и «Только точки».

Скриншот окна мастера диаграмм в LibreOffice Calc

Как вы можете видеть, в этом окне присутствуют настройки линий. «Свойства...» будут те же, что и при обычных линиях. Но настраивать их не имеет смысла, так как вид от этого не изменится. «Сортировать по значениям X» тоже не имеет смысла в этом типе диаграммы. Эта небольшая несуразица тянется много лет и пока не исправлена. Последующие шаги полностью повторяют шаги предыдущих диаграмм этого типа. И так как у нас диаграмма практически готова, перейдём к четвёртому шагу. На четвёртом шаге нам следует снять галочку показывать легенду, заполнить заголовок, и проставить наименования осей, для наглядности. Заголовок у нас будет - «Соотношение выработки электроэнергии от ВИЭ (исключая ГЭС) и выбросов диоксида углерода Евросоюза», для оси X - «доля ВИЭ», для оси Y - «количество выбросов, кг/ВВП». Нажмём кнопку «Готово». Как вы можете видеть, заголовок у нас не помещается в рамки диаграммы. В статье про гистограммы я рассказывал как с этим справляться. Воспользуемся этим же способом. В редакторе диаграмм дважды щелкнем по заголовку, поставим курсор в необходимое место для разделения текста и нажмём Enter. У нас получилась вот такая диаграмма:

Диаграмма XY только точки в LibreOffice Calc

Диаграмма XY «Линии и точки» с многими рядами данных

Диаграмма XY «Линии и точки» в LibreOffice Calc строится аналогично предыдущим. На ней отображаются линии и узлы через которые они проходят. Поэтому мы построим диаграмму с многими рядами данных, чтобы заодно разобрать и этот аспект.
По умолчанию считается, что первый столбец с данными принадлежит X, а все последующие принадлежат Y. Составим таблицу зависимости выбросов CO2 для газообразных и жидких видов топлива от доли производимой энергии из возобновляемых источников (исключая гидроэлектростанции) для Евросоюза. Как и в предыдущем примере, данные для таблицы взяты из базы данных The World Bank:World Development Indicators. Таблица будет выглядеть следующим образом:

Таблица для Диаграммы XY линии и точки с многими рядами данных в LibreOffice Calc

Выделим диапазон B3:D21 и запустим мастер диаграмм. На первом шаге выберем «Диаграмма XY» и «Линии и точки». Так как у нас таблица отсортирована по имени стран, на этом шаге так же нам нужно поставить флажок «Сортировать по значениям X». В нашем случае второй шаг можно пропустить, мастер правильно определил ряды данных. На третьем шаге в поле «Диапазон для: Название» нужно указать ячейки в которых будет находиться текст для легенды. Для «Столбец С» это C2, а для «Столбец D» это D2. На четвертом шаге нам нужно как всегда заполнить «Заголовок», и для этого случая, подписать названия осей. В заголовке укажем «Зависимость выбросов диоксида углерода от доли ВИЭ (без ГЭС) в Евросоюзе», для оси X «доля ВИЭ в выработке электроэнергии» и для оси Y «выбросы диоксида углерода». Так же, по причине большого размера подписей для легенды, я предлагаю перенести её в низ диаграммы. Нажмем кнопку «Готово».
Заголовок у нас выходит за границы, поэтому щелкаем по нему дважды и делим пополам. Ещё в этой диаграмме поле диаграммы получилось очень узким, поэтому я предлагаю увеличить высоту, что бы более ярко была видна тенденция показателей. Сделать это можно двумя путями:
  • потянуть за квадратик внизу области диаграммы на необходимое расстояние;
  • либо выйдя из редактора диаграмм, щёлкнуть по диаграмме в любом месте правой кнопкой мыши и в контекстном меню выбрать «Положение и размер», и на вкладке «Положение и размер» в разделе «Размер» задать необходимые размеры.
Я воспользовался вторым способом и выставил размеры для ширины 16,0 см,а для высоты 12,0 см. В итоге получилась такая диаграмма:

Диаграммы XY линии и точки с многими рядами данных в LibreOffice Calc

Трёхмерный вид диаграммы XY

Трёхмерный вид диаграммы XY в LibreOffice Calc тяжело использовать по причине малого количества настроек. По существу, этот тип диаграмм может использоваться в основном только для попытки приукрасить отображение данных. Читаемость данных при этом обычно только снижается. Строится он аналогично предыдущим видам. Настройка 3D отображения спрятана в редакторе диаграмм. Для того, чтобы её вызвать, нужно нажать правой кнопкой в редакторе диаграмм в любом месте, в контекстном меню выбрать «Трёхмерное изображение...», в окне «Трёхмерный вид» перейти на вкладку «Внешний вид».
Я нашёл для себя применение этого типа диаграммы для построения поверхностей данных. Но построение поверхности в LibreOffice Calc требует создание большого количества точек, которые на средних по производительности компьютерах уже значительно начинают тормозить систему. Кроме того, возможно показывать только поверхность монотонно возрастающие/убывающие функции с достаточно плавными изменениями. При резких перепадах на функции, получается не читаемый график. Подробнее о постарении поверхностей в LibreOffice Calc я расскажу в отдельной статье.

Цвета и знаки для точек по умолчанию

Так же, как и в сетчатых диаграммах, значки для точек данных по умолчанию, к сожалению, сменить нельзя. Если вам нужны другие значки, то каждый раз при построении диаграммы их придётся выбирать в ручную.
Цвета по умолчанию для «Диаграммы XY» как и для всех задаются в меню Сервис → Параметры → Диаграммы. Задать цвета по умолчанию отдельно для конкретного типа диаграмм нет возможности.
Смену цвета и значков для точек я подробно описал в статье про сетчатые диаграммы. В «Диаграмме XY» это делается аналогично.

Дополнительная литература и источники