Графика

 

Версия для печати

Рисование данных

Maple не вполне предназначен для анализа данных (он больше любит функции). Для данных лучше подходят LabView или MatLab. Но чтобы вводить в Maple какие-то данные и сравнивать их с формулами, надо владеть соответствующими приемами.

Maple хранит и строит данные в матричной форме.

Для чтения данных предназначена команда readdata:

  • d:=readdata("datafile",2);

где цифра 2 означает, что в файле данных две колонки. При исполнении команды получится ошибка, поскольку в соответствующей папке нет файла с именем datafile, которое названо в команде. Для исправления ошибки надо создать файл данных с помощью Блокнота Windows (не забывайте о возможности копирования/вставки):

01.0
11.5
21.9
32.6
43.7
55.4
67.3
710.4
814.2
920.0
1029.0

После создания и сохранения файла в рабочей папке попытайтесь снова выполнить команду. Удачно или нет? Если нет, то потому, что Блокнот автоматически ставит всем файлам расширение .txt. Исправим команду чтения readdata:

  • d:=readdata("datafile.txt",2);

Если остаться в окне Windows, то эта конструкция не сработает, так как не указано правильно имя папки. Примените команду currentdir: currentdir ("имя папки"), например:

  • currentdir("c:\\PhysicsMaple");

Для поиска рабочей папки (директории) применяется команда:

  • currentdir();
Если надо перейти на диск:
  • currentdir("a:");

(Применять другие DOS-овские команды не получится, Maple их не поймет.)

Числа сохранены в матрице. По ним можно построить график. Применяется команда Maple pointplot (см. ниже). Но вначале необходимо загрузить пакет with(plots) (он большой, и его загружают, только если он нужен). Без пакета Maple ответит повторением команды синим текстом на экране.

  • with(plots):
  • pointplot(d);

Учтите, что команда with(plots) заканчивается :, т. е. без листа выдачи на экране. Если поставить ;, то выдача будет очень большой.

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

  • p1:=pointplot(d):
  • p2:=plot(exp(x/3),x=0..10):
  • display({p1,p2});

Maple-овский пакет stats делает подобные вещи, и можно даже сделать подгонку.