Графический график программирования Mathematica - PullRequest
3 голосов
/ 25 октября 2009

У меня есть файл с 40000 точек данных. В Matlab я могу использовать команду plot для рисования графика:

aaa = Import('file Name');
plot(aaa,mesh)

Как мне это сделать в Mathematica? Я попробовал:

aaa = Import["File Name"]
ListPlot3D[aaa]

но это не работает.

1 Ответ

8 голосов
/ 28 октября 2009

У вас есть две проблемы: (1) как импортировать данные в Mathematica и (2) как их отобразить.

Для первой проблемы самый простой ответ: это зависит от формата данных. Если файл относится к одному из поддерживаемых типов , импорт имеет ряд возможностей, которые нельзя превзойти. Если ваши данные просто разделены табуляцией (или пробелами), используйте формат «Таблица» следующим образом:

Import["file name", "Table"]

с использованием различных параметров импорта для указания разделителей записи и поля. Кроме того, вы можете использовать ReadList, который просто читает в списке значений. Если ваши данные имеют форму

value value value ... value
etc.

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

ReadList["file name", Number, RecordLists -> True]

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

Что касается второй проблемы, если ваши данные представляют собой набор троек, то есть (x, y, z) или просто набор значений высоты, то ListPlot3D должен работать просто отлично. Если ваши данные вместо формы (x, y, z, f), где f - это значение функции в (x, y, z), тогда вам следует использовать ListContourPlot3D. Вы определяете, какие контуры вы хотите, используя опцию Контур. Имейте в виду, ListContourPlot3D может занять некоторое время для создания графика в зависимости от размера вашего набора данных. Кроме того, это может быть проблема с памятью, на моем компьютере (G4, MacOS 10.4, 2 ГБ) ListContourPlot3D с сеткой 80 x 80 x 80 может легко занять 500 МБ.

...