Contour Plotting matrix size issue

8 次查看(过去 30 天)
I am trying to plot computations using the contour plot, but am not sure how to because my z variable is the computation results and the dimensions are larger than y and x.
b = [0.1, 1.0, 10, 100];
R = (1:0.2:5);
theta = 45;
[F] = ratio_rp_bf(b,R,theta); 5x21
x = R.*cos(theta); 1x21
y = R.*sin(theta);1x21
z = [F];
Am I trying to plot the wrong things?
  3 个评论
Image Analyst
Image Analyst 2013-2-15
I don't know. Where is your call to the contour() function or the plot() function?
Kelly
Kelly 2013-2-15
编辑:Kelly 2013-2-15
this is my function
function [F] = ratio_rp_bf(b,R,theta)
for i = 1:length(b)
for r = 1:length®
F(i,r) = (16/3).*(1./b(i)).*(1./R(r)).^3.*sqrt((1./R(r)).^4-2.*(1./R(r)).^2.*cos(2.*theta)+1);
end
end
this is as far as I've gotten in terms of plotting a 2x2 subplot, everytime I do another subplot it looks exactly the same. I'm trying to get it to plot for each b value.
b = [0.1, 1.0, 10, 100]; R = (1:1.2:5); theta = atan(R/b); [F] = ratio_rp_bf(b,R,theta);
x = R.*cos(theta);
y = R.*sin(theta);
z = F;
figure(1)
subplot(2,2,1)
contour(x,y,z)
grid on
xlabel('b/D50')
ylabel('radii')
title('Radial Pressure vs. Bed Forces')

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2013-2-15
When you use
contour(XVALUES, YVALUES, ZVALUES)
then XVALUES should be a vector of length size(ZVALUES,1), and YVALUES should be a vector of length size(YVALUES,2). Your Z is 5 x 21, and your R is of length 21 (so your y is too), but you do not appear to have any variable of length 5 to supply for XVALUES.
Are you sure you want to contour? And not that you want to plot 5 lines in 3 space?
  1 个评论
Kelly
Kelly 2013-2-15
this is my function
function [F] = ratio_rp_bf(b,R,theta)
for i = 1:length(b)
for r = 1:length®
F(i,r) = (16/3).*(1./b(i)).*(1./R(r)).^3.*sqrt((1./R(r)).^4-2.*(1./R(r)).^2.*cos(2.*theta)+1);
end
end
this is as far as I've gotten in terms of plotting a 2x2 subplot, everytime I do another subplot it looks exactly the same. I'm trying to get it to plot for each b value using contour.
b = [0.1, 1.0, 10, 100]; R = (1:1.2:5); theta = atan(R/b); [F] = ratio_rp_bf(b,R,theta);
x = R.*cos(theta);
y = R.*sin(theta);
z = F;
figure(1)
subplot(2,2,1)
contour(x,y,z)
grid on
xlabel('b/D50')
ylabel('radii')
title('Radial Pressure vs. Bed Forces')

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Contour Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by