how to plot rectangles from csv data

%hi,
%how to plot rectangles from csv files? This code does read the csv file
Array=csvread('dataxyz.csv');
n = Array(:, 1);
m = Array(:, 2);
plot(m, n)
%but it doesnt work
c = [n m];disp(c);
pos = [c-R*0.5 R R];
r = rectangle('Position',pos,'Curvature',[1 1], 'FaceColor', 'black', 'Edgecolor','none')
%thankyou

3 Comments

Can you elaborate more on what exactly isn't working? Are you getting some kind of error message? Is it not producing rectangles for you? Is it producing rectangles of the wrong size? Is it producing rectangles in the wrong locations?
Each call to rectangle() draws exactly one rectangle. You cannot get rectangle to draw multiple rectangles in a single call.
Hint:
x = [x1 x2 x2 x1 x1 nan x3 x4 x4 x3 x3 nan ...]
y = [y1 y1 y2 y2 y1 nan y3 y3 y4 y4 y3 nan ...]
plot(x, y)
KSSV
KSSV on 15 Jan 2019
Edited: KSSV on 15 Jan 2019
It depends on how the data is arranged in your csv file. Attach your csv file.
Alos try
plot(m',n')

Sign in to comment.

 Accepted Answer

A = [1 31
4 9
12 56
17 12
47 43
56 45
43 25
50 14] ;
R = 1 ;
th = linspace(0,2*pi) ;
x = R*cos(th) ;
y = R*sin(th) ;
figure
hold on
for i = 1:size(A,1)
xc = A(i,1)+x ;
yc = A(i,2)+y ;
plot(xc,yc) ;
end

1 Comment

vishnu
vishnu on 15 Jan 2019
Edited: vishnu on 15 Jan 2019
thank you all, especially to mr KSSV, it works well now with simple for loop i = 1:size(A,1)

Sign in to comment.

More Answers (0)

Asked:

on 14 Jan 2019

Edited:

on 9 Apr 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!