Как нарисовать 2D карту с plot () в MATLAB - PullRequest
0 голосов
/ 05 августа 2010

Я пытаюсь создать 2D карту некоторого места. Я получаю вектор показаний лазерного датчика 181x1 от робота. Все значения в этом векторе соответствуют расстоянию от этого единственного угла, например 1 °, 2 ° ..180 °. Проблема здесь в том, что мне нужно создать карту, нанося эти расстояния в виде точек с помощью plot () или аналогичной ей функции.

Ответы [ 3 ]

4 голосов
/ 05 августа 2010

есть функция для построения в полярных координатах. попробовать

>> polar( (0:180)/180*pi, distanceVector)
2 голосов
/ 05 августа 2010

Вы можете преобразовать ваши угловые координаты в декартовы X и Y с помощью функции POL2CART .

[X,Y] = pol2cart((1:180)/180*pi, distanceVector);

Тогда вы можете использовать PLOT.

plot(X,Y,'.')
1 голос
/ 05 августа 2010
plot(theVector, '.')

, если вам нужно рисовать точки, а не линии. Если точка слишком мала, попробуйте построить ее в виде кружков.

plot(theVector, 'o')

Подробнее см. http://www.mathworks.com/access/helpdesk/help/techdoc/ref/linespec.html.

...