MagicPlot. Еще одна программа для рисования графиков

MagicPlot. Еще одна программа для рисования графиков

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

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

В отличие от описанных ранее программ, MagicPlot умеет строить только графики вида y(x), то есть никаких круговых диаграмм, линий уровня и, тем более, трехмерных графиков от нее не ждите (по крайней мере пока). Но обычные двумерные графики в виде линий строить в ней довольно удобно.

Главное окно Magicplot

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

Запускаем программу, выбираем пункт меню Project -> Import Text Table… и выбираем файл с данными. Для примера я открыл файл, в котором содержатся 8 столбцов (столбцы от A до H).

Импорт данных

Мы можем просто создать таблицу по данным, а можем сразу указать, по каким столбцам мы хотим нарисовать график. На следующем скриншоте видно, что в качестве данных по оси X выбран столбец B, а в качестве данных по оси Y — столбец H. В качестве данных по оси X можно использовать и номера строк.

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

Предпросмотр импортированных данных

После нажатия на кнопку «Import» будет создан график.

Созданный график

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

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

Настройки осей

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

Линии для кривых

На линии можно накладывать маркеры с заданным шагом, их тоже не много, всего 6 видов.

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

Аппроксимация данных

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

MagicPlot написана на Java, что позволяет ей быть кроссплатформенной — на официальном сайте есть версии под Windows, Mac и *nix. Программа не требует установки и состоит всего из одного запускаемого файла, правда, программа не совсем портабельна, потому что хранит настройки не в папке с запускаемым файлом, а в пользовательской директории.

В целом программа интересная, но возможностей по рисованию у нее все-таки маловато.

Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.

Пожалуйста, оцените запись

УжасноПлохоТак себеХорошоОтлично (Количество голосов: 5, средняя оценка: 4,80)
Загрузка...

комментариев 5

  1. Alex:

    А какой метод используется для аппроксимации и насколько быстро сходится на больших массивах?
    Кряк к нему можно найти?

  2. Jenyay:

    По поводу кряка не знаю, не искал. А на счет аппроксимации я написал автору (он наш человек 🙂 ), думаю, что он ответит точнее, чем я.

  3. Electriq:

    В MagicPlot используется алгоритм нелинейной аппроксимации Левенберга-Марквардта, как и во многих других программах. С большими массивами проблем нет, работает быстро. Сходимость зависит от данных и начальных условий. Я специально с секундомером не стоял, но друг сравнивал с Ориджином, и сказал, что ему показалось, что MagicPlot считает быстрее. А вот программа Fityk по моим наблюдениям немного быстрее, т.к. там формулы компилируются в процессорный код (они так пишут), а в MagicPlot хоть и очень быстрый, но все же интерпретатор некоего «псевдокода».
    Про кряк — это не ко мне 😉

    Александр, разработчик.

  4. Electriq:

    Вышла новая версия MagicPlot 🙂 Добавлены новые типы маркеров, логарифмический масштаб, исправлена куча ошибок 🙂

  5. Electriq:

    Если кто-то следит, очередное обновление 🙂

Leave a comment

Subscribe without commenting