How to put a value in a plot label?

30 views (last 30 days)
Jesse Finnell on 29 Oct 2019
Commented: Jesse Finnell on 29 Oct 2019
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)');
zlabel('SOTE (%)');
grid on
else
subplot(4,2,k)
surf(X, Y, SOTE)
title('Depth = (varying number here) ft');
xlabel('Flux (scfm)');
zlabel('SOTE (%)');
grid on
end
end
In each subplot the depth is 5, 10, 15, 20 respectively.

Alex Mcaulley on 29 Oct 2019
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)');
zlabel('SOTE (%)');
grid on
else
subplot(4,2,k)
surf(X, Y, SOTE)
title(['Depth = ' num2str(depth(i)) ' ft']);
xlabel('Flux (scfm)');
zlabel('SOTE (%)');
grid on
end
end
Jesse Finnell on 29 Oct 2019
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)');
zlabel('SOTE (%)');
grid on
end

R2019a

Community Treasure Hunt

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

Start Hunting!