Matlab의 x, y 점 집합으로 회귀선을 플로팅 할 수 있습니다. 그러나 점의 클러스터 (아래 그림과 같이)가 있다면 4 개의 점 클러스터가 있다고 가정하고 4 개의 회귀선을 그려야합니다. 어떻게하면됩니까? 모든 점은 x, y에 저장됩니다. 그것들을 분리하여 4 가지 다른 변수 집합으로 묶을 방법이 없습니다.Matlab의 점 집합 클러스터 회귀선
아래 이미지를 참조하십시오. 범례와 라벨을 무시하십시오. 어떻게 Matlab에서이 작업을 수행 할 수 있습니까? 하나의 클러스터 만 있다면 할 수 있습니다. 그러나 나는 한 번에 네 개의 클러스터 모두를 위해하고 싶다. 나는 하나 개의 클러스터 지금 사용하고
코드 : 당신은 클러스터로 값을 구분해야합니다
%----------- Linear regression -----------------
p= polyfit(x,y,1);
f= polyval(p,x);
%----------- Call R-square function ------------
r2=Rsquare(x,y,p);
%------------- Plot data -----------------------
figure()
plot(x,y,'*k');hold on
plot(x,f,'-r'); % show linear fit
xlabel('index');
ylabel('Intensity a.u.');
title('Test: Linear regreesion && R-square');
%------- Show y-data on current figure ---------
[row col]=size(y);
for i=1:col
str=num2str(y(i));
text(x(i),y(i),str,'Color',[0 0 1]);
end
%--Show linear equation on current figure -------
m1=num2str(p(1));c1=num2str(p(2));Rsquare1=num2str(r2(1));
text(1.05,80,['y= ',m1,'x+',c1,' , R^2= ',Rsquare1,'.'],'FontSize',10,'FontName','Times New Roman');
하나의 세트에 대해 작동하는 코드를 게시 할 수 있습니까? f 점? – darthbith
게시물에 추가되었습니다. 확인해주십시오. – ridctg
'polyfit (x (1:10), y (1:10), 1)'과 같은 행렬 색인을 사용할 수 있습니까? 왜 그들을 분리 된 변수로 나눌 수 없습니까? – darthbith