Multiple polar plot in one figure

Dear All,
I am trying to plot multiple polar plot in one figure, just like the image shown below
I have made one script which can make only one polar plot at a time for the inputs C11, C22, C12, C66;
theta = 0:0.01:2*pi;
c=cos(theta);
s=sin(theta);
C11 = input('Enter value of c11 in N/m:');
C22 = input('Enter value of c22 in N/m:');
C12 =input('Enter value of c12 in N/m:');
C66 =input('Enter value of c66 in N/m:');
y = (C11*C22 - C12.^2)./((C11.*s.^4) + (C22.*c.^4) +((C11*C22 - C12.^2)/C66 - 2*C12).*c.^2.*s.^2);
polarplot(theta,y)
However i have 3 set of C11, C22, C12, C66, i want to plot them together. I am attching my data below in excel sheet. Kindly help.

3 个评论

Let it be what is your problem? You can input array or matrix...
I have tried the code below;
theta = 0:0.01:2*pi;
c=cos(theta);
s=sin(theta);
C11 = [314.127; 157.485; 155.944];
C22 = [314.609; 157.798; 156.038];
C12 =[64.253; 28.292; 36.88] ;
C66 =[124.974; 64.516; 59.618];
y = (C11.*C22 - C12.^2)./((C11.*s.^4) + (C22.*c.^4) +((C11.*C22 - C12.^2)/C66 - 2*C12).*c.^2.*s.^2);
polarplot(theta,y)
It is showing "Matrix dimensions must agree".

请先登录,再进行评论。

 采纳的回答

theta = 0:0.01:2*pi;
c=cos(theta);
s=sin(theta);
C11 = [314.127; 157.485; 155.944];
C22 = [314.609; 157.798; 156.038];
C12 =[64.253; 28.292; 36.88] ;
C66 =[124.974; 64.516; 59.618];
y = zeros(3,length(c)) ;
for i = 1:3
y(i,:) = (C11(i).*C22(i) - C12(i).^2)./((C11(i).*s.^4) + ........
(C22(i).*c.^4) +((C11(i).*C22(i) - C12(i).^2)/C66(i) - 2*C12(i)).*c.^2.*s.^2);
end
polarplot(theta,y)

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by