1、surf(Z);
Z為一個矩陣,如果Z是向量,那么就需要先將其轉換為矩陣
reshape(Z,[length(X),length(Y)]); X和Y為你的橫坐標取值個數。
具體代碼調用格式如下
Z=reshape(acc,[length(lambda2),length(lambda1)]); surf(Z); xlabel('\alpha','fontsize',20); set(gca, 'xtick',1:2:11); set(gca,'xticklabel',{'10^-5','10^-3','10^-1','10^1','10^3','10^5'}) ylabel('\beta','fontsize',20); set(gca, 'ytick',1:2:11); set(gca,'yticklabel',{'10^-5','10^-3','10^-1','10^1','10^3','10^5'}); zlabel('Classification accuracy (%)','fontsize',20); colorbar('fontsize',12); view(135,55); title('AR','fontsize',20); print('-depsc','AR_4.eps');
2、matlab plotyy 一條橫軸,兩條縱軸
clear all
clc
figure;
COIL20_convergence_Acc = xlsread(‘收斂曲線.xls');
obj = COIL20_convergence_Acc(:,1)';
eachacc = COIL20_convergence_Acc(:,2)';
x = 1:size(obj,2);
[AX,H1,H2] = plotyy(x,obj,x,eachacc,'plot');
legend('Objective function value','Classification accuracy');
set(gca,'fontsize',14);
% set(get(AX(1),'Xlabel'),'String','Number of iterations');
set(get(AX(1),'Ylabel'),'String','Objective function value','fontsize',14,'color','k');
set(get(AX(2),'Ylabel'),'String','Classification accuracy','fontsize',14,'color','k');
xlabel('Number of iterations');
set(get(gca,'xlabel'),'fontsize',14); % 設置標尺字體大小
set(H1,'marker','.');
set(H2,'marker','.');
3、scatter3, 畫散點圖
對於一個n_sample*dim_fea的數據(1000*3維數據)
調用格式為:scatter3(X(:,1),X(:,2),X(:,3),'b','o','filled'); % 其中b為顏色,o為用圓圈標記,filled表示實心
scatter( : a為區域尺寸, c為數據點顏色(向量)。x,y,a,c)
scatter(LPP_data(:,1),LPP_data(:,2),12,1:1:1000,'+');
PCA LPP NPE對於隨機散點圖降維顯示結果如下: 部分降維代碼見:http://lvdmaaten.github.io/drtoolbox/#download
% 散點圖 降維學習
clear all
clc
addpath('G:\機器學習\代碼和數據集\代碼\降維\drtoolbox\techniques\');
% load twinpeaks;
[X, labels, t] = generate_data('twinpeaks',1000); % swiss
% load swiss
figure;
scatter3(X(:,1),X(:,2),X(:,3),12,1:1:1000,'o'); title('original twinpeaks');
% PCA
options.ReducedDim = 2;
[eigvector, eigvalue, meanData, PCA_data] = PCA(X, options);
figure;
scatter(PCA_data(:,1),PCA_data(:,2),12,1:1:1000,'o'); title('PCA twinpeaks');
% [mappedX, mapping] = pca(X, 2);
% NPE
no_dims = 2;
k = 10;
[NPE_data, mapping] = npe(X, no_dims, k);
figure;
scatter(NPE_data(:,1),NPE_data(:,2),12,1:1:1000,'o'); title('NPE twinpeaks');
% LPP
[LPP_data, mapping] = lpp(X, no_dims, k);
figure;
% scatter(LPP_data(:,1),LPP_data(:,2),12,'b','.'); title('LPP twinpeaks');
% figure;
scatter(LPP_data(:,1),LPP_data(:,2),12,1:1:1000,'o'); title('LPP twinpeaks');
4、生成顏色矩陣 colour = hsv(num)
5、按照類標來顯示散度圖
% 散點圖 降維學習
clear all
clc
addpath('G:\機器學習\代碼和數據集\代碼\降維\drtoolbox\techniques\');
% load twinpeaks;
[X, labels, t] = generate_data('twinpeaks',1000); % swiss
% load swiss
figure;
indx = find(labels == -1);
scatter3(X(indx,1),X(indx,2),X(indx,3),12,'b','o');
hold on
indx1 = find(labels == 0);
scatter3(X(indx1,1),X(indx1,2),X(indx1,3),12,'k','o'); title('original twinpeaks');
% PCA
options.ReducedDim = 2;
[eigvector, eigvalue, meanData, PCA_data] = PCA(X, options);
figure;
scatter(PCA_data(indx,1),PCA_data(indx,2),12,'b','o');
hold on
scatter(PCA_data(indx1,1),PCA_data(indx1,2),12,'k','o');
title('PCA twinpeaks');
% [mappedX, mapping] = pca(X, 2);
% NPE
no_dims = 2;
k = 10;
[NPE_data, mapping] = npe(X, no_dims, k);
figure;
scatter(NPE_data(indx,1),NPE_data(indx,2),12,'b','o');
hold on
scatter(NPE_data(indx1,1),NPE_data(indx1,2),12,'k','o');
title('NPE twinpeaks');
% LPP
[LPP_data, mapping] = lpp(X, no_dims, k);
figure;
% scatter(LPP_data(:,1),LPP_data(:,2),12,'b','.'); title('LPP twinpeaks');
% figure;
scatter(LPP_data(indx,1),LPP_data(indx,2),12,'b','o');
hold on
scatter(LPP_data(indx1,1),LPP_data(indx1,2),12,'k','o');
title('LPP twinpeaks');
6
未完待續
