How to add legend in a 3D scatter plot?

24 views (last 30 days)
Hassan Ashraf
Hassan Ashraf on 5 Jul 2020
Edited: madhan ravi on 5 Jul 2020
I have following piece of code. I am using tsne visualization to plot 3D scatter plot. But I am unable to find a way to add legends.
clear all; clc; close all;
load('trLabels.mat')
load('trFeatures.mat')
X = trSets;
L = labels;
rng default % for fair comparison
Y3 = tsne(X,'Algorithm','barneshut','NumPCAComponents',20,'NumDimensions',3);
figure
scatter3(Y3(:,1),Y3(:,2),Y3(:,3),15,L,'filled', '');
colormap( jet(numel(unique(L))) )

Answers (1)

madhan ravi
madhan ravi on 5 Jul 2020
legend(' :) ')
  5 Comments
madhan ravi
madhan ravi on 5 Jul 2020
Edited: madhan ravi on 5 Jul 2020
Can’t help without looking at your file, I would see 11 calls to scatter3() or a loop whereas you have only one ? and you expect 11 entries?
Hassan Ashraf
Hassan Ashraf on 5 Jul 2020
I have added the data files and below is my code.
clear all; clc; close all;
load('trLabels.mat')
load('trFeatures.mat')
X = trSets;
L = labels;
rng default % for fair comparison
Y3 = tsne(X,'Algorithm','barneshut','NumPCAComponents',20,'NumDimensions',3);
figure
scatter3(Y3(:,1),Y3(:,2),Y3(:,3),20,L,'filled', '');
colormap( jet(numel(unique(L))) )
legend(compose('Entry %d', 1:11))

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!