How to put a value in a plot label?

I have a surf plot where one fixed variable changes and each one is apart of a subplot. I would like the title of each subplot to reflect the fixed variable at that instance. My code currently is:
for k = 1:4
kd = 0.0143.*5*k;
SOTE = (a + kd + kp).*X.^beta.*5*k;
figure(1)
if k < 3
subplot(4,1,k)
surf(X, Y, SOTE)
title('Depth = (varying number here) ft');
xlabel('Flux (scfm)');
ylabel('AT/AD');
zlabel('SOTE (%)');
grid on
else
subplot(4,2,k)
surf(X, Y, SOTE)
title('Depth = (varying number here) ft');
xlabel('Flux (scfm)');
ylabel('AT/AD');
zlabel('SOTE (%)');
grid on
end
end
In each subplot the depth is 5, 10, 15, 20 respectively.

 Accepted Answer

depth = [5,10,15,20];
for k = 1:4
kd = 0.0143.*5*k;
SOTE = (a + kd + kp).*X.^beta.*5*k;
figure(1)
if k < 3
subplot(4,1,k)
surf(X, Y, SOTE)
title(['Depth = ' num2str(depth(i)) ' ft']);
xlabel('Flux (scfm)');
ylabel('AT/AD');
zlabel('SOTE (%)');
grid on
else
subplot(4,2,k)
surf(X, Y, SOTE)
title(['Depth = ' num2str(depth(i)) ' ft']);
xlabel('Flux (scfm)');
ylabel('AT/AD');
zlabel('SOTE (%)');
grid on
end
end

1 Comment

A condensed version of the above code
depth = [5 10 15 20];
for k = 1:4
kd = (-0.001+0.0153)*depth(k);
SOTE = (a + kd + kp).*X.^beta*depth(k);
figure(1)
subplot(2,2,k)
surf(X, Y, SOTE)
title(['Depth is ',num2str(depth(k)),'ft']);
xlabel('Flux (scfm)');
ylabel('AT/AD');
zlabel('SOTE (%)');
grid on
end

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products

Release

R2019a

Community Treasure Hunt

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

Start Hunting!