legend for plot3 command

37 views (last 30 days)
Indrajit Roy
Indrajit Roy on 18 Mar 2020
Commented: Adam Danz on 20 Mar 2020
I am going to plot two 3D data with the help of below command lines.
How can I insert legend for both the 3D data in a single window?
plot3(x,y,z);
hold on;
plot3(xx,yy,zz);

Accepted Answer

Adam Danz
Adam Danz on 18 Mar 2020
Use the DisplayName property of graphics objects to specify the legend string.
plot3(x,y,z, 'DisplayName', 'Object1');
hold on;
plot3(xx,yy,zz, 'DisplayName', 'Object2');
legend()
or
p1 = plot3(x,y,z, 'DisplayName', 'Object1');
hold on;
p2 = plot3(xx,yy,zz, 'DisplayName', 'Object2');
legend([p1,p2])
  4 Comments
Indrajit Roy
Indrajit Roy on 20 Mar 2020
Edited: Indrajit Roy on 20 Mar 2020
Sorry for late reply...
  • If x,y,z vectors are of 2×2 dimension
  • and xx,yy,zz are of 1×2
then this error will appear:
''Error using horzcat
Dimensions of arrays being concatenated
are not consistent.''
I was pointing this issue.
Adam Danz
Adam Danz on 20 Mar 2020
I understood. My previous comment shows what to do under those circumstances.
Another alternative:
legend([p1(:);p2(:)])

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!