37 lines
920 B
Matlab
Executable File
37 lines
920 B
Matlab
Executable File
function plotClass(X, label)
|
|
% Plot 2d/3d samples of different classes with different colors.
|
|
% Written by Mo Chen (sth4nth@gmail.com).
|
|
[d,n] = size(X);
|
|
if nargin == 1
|
|
label = ones(n,1);
|
|
end
|
|
assert(n == length(label));
|
|
|
|
color = 'brgmcyk';
|
|
m = length(color);
|
|
c = max(label);
|
|
|
|
figure(gcf);
|
|
clf;
|
|
hold on;
|
|
switch d
|
|
case 2
|
|
view(2);
|
|
for i = 1:c
|
|
idc = label==i;
|
|
% plot(X(1,label==i),X(2,label==i),['.' color(i)],'MarkerSize',15);
|
|
scatter(X(1,idc),X(2,idc),36,color(mod(i-1,m)+1));
|
|
end
|
|
case 3
|
|
view(3);
|
|
for i = 1:c
|
|
idc = label==i;
|
|
% plot3(X(1,idc),X(2,idci),X(3,idc),['.' idc],'MarkerSize',15);
|
|
scatter3(X(1,idc),X(2,idc),X(3,idc),36,color(mod(i-1,m)+1));
|
|
end
|
|
otherwise
|
|
error('ERROR: only support data of 2D or 3D.');
|
|
end
|
|
axis equal
|
|
grid on
|
|
hold off |