Поверхностный график для квадратной матрицы и маркировки точек данных - PullRequest
0 голосов
/ 25 февраля 2011

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

Как я могу это сделать? Спасибо

1 Ответ

2 голосов
/ 25 февраля 2011

Для одной 2D матрицы вы можете использовать функцию SURF для построения трехмерной поверхности:

% generate random square 2D matrix 20x20
x = rand(20);
% make some (10) mountains
x(randi(numel(x),10,1))=rand(10,1)+5;
% plot surface
surf(x)

Как вы хотите построить несколько поверхностей? На одной фигуре?

Чтобы обозначить большие точки, давайте пороговые данные:

cutvalue = 1;
iHigh = find(x(:) > cutvalue);
[irow,icol] = ind2sub(size(x), iHigh);
hold on
plot3(icol, irow, x(iHigh), 'ro')
hold off

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...