Say, for example, I had ...
x = [1 1 2 2];
y = [1 2 2 1];
plot(x, y, \'b-\');
I will get a plot with lines connecting the points (1,1), (1,
Do you have the Image Processing Toolbox? If yes,
impoly(hparent, position, 'Closed')
might be of use to you.
http://www.mathworks.de/help/toolbox/images/ref/impoly.html
impoly
can be useful, however, it creates a modifiable curve which is slower than plot.
You can write a simple function for that:
function plotc(x,y,varargin)
x = [x(:) ; x(1)];
y = [y(:) ; y(1)];
plot(x,y,varargin{:})
end
By the way, the (:)
colon operator is used as defensive programming means. In this way, x
and y
can be either row or column vectors.
The varargin
allows using additional parameters, like:
plotc(x,y,'Color','r');
plotc(x,y,'Parent',a,'LineWidth',2);
Unless your final and last points are the same then plot
won't know that you want a closed curve. So either add an additional point to your list to plot or try using, for example, rectangle.