Legend in plot with a loop

Hi,
I have some data which plots 48 different figures for 48 different points. I want to have some kind of loop which can be used in the Legend command for the plotting so that I don't have to write the Legend for the figures. I have the 48 points in a variable =a in the workspace.
for j=1:48
figure;
normB48points=(normB(:,j));
plot(t',normB48points);
xlabel('time in seconds (t)');
ylabel('flux densities in Tesla (T)');
legend('flux densities at point');
end

 Accepted Answer

Try this:
for j=1:48
figure;
normB48points=(normB(:,j));
plot(t',normB48points);
xlabel('time in seconds (t)');
ylabel('flux densities in Tesla (T)');
name = ['Flux densities at ', num2str(j)];
legend(name);
end

2 Comments

Thank you for the answer.
It gives numbers as 1 to 48 as in the figure ans attached to this reply. But, I want to have these co-ordinates in figure coord attached.
Then just modify the above code as follows:
Instead of:
name = ['Flux densities at ', num2str(j)];
Use:
name = ['Flux densities at ', num2str(a(1,j),',', num2str(a(2,j)];
where a is your coordinate vector.

Sign in to comment.

More Answers (1)

Hassan Bhatti
Hassan Bhatti on 22 Feb 2019
my matlab code and workspace is attached. It is still not working.
PFA

4 Comments

There's an error because one bracket is not closed.
name = ['Flux densities at ', num2str(a(1,j),',', num2str(a(2,j))];
It works fine for me now.
Thank you so much.
Hey,
I thought it will be yours as your comment was in my thread. :D I accepted your first answer. Have a great day!
Thanks! :D

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!