понедельник, 3 мая 2010 г.

Визуализация данных в Matlab

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

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

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

И третий способ, который я использовал в отчёте - scatter3. Для этого пришлось разбить кубик данных на 4 массива: X, Y, Z, C. В первых трёх назодятся координаты каждой точки, у которой есть вес, а в массиве C содержится сам вес точки, который используется для определения цвета.
Последние два метода довольно требовательны к ресурсам вашего компьютера

Комментариев нет:

Отправить комментарий