2016-11-24 3 views
0

Я новичок в Matlab, и я изо всех сил пытаюсь спланировать разницу между этими двумя графиками (вычесть один сюжет из другого) ... Может ли кто-нибудь мне помочь?Matlab_ Разметка между двумя графиками

% 2D plot of original target locations 
X= double(xCoords); 
Y= double(yCoords); 
originalvalues = hist3([X(:) Y(:)],[30 40]); 
imagesc(originalvalues) 
contourf(originalvalues) 
c= colorbar; 
c.Label.String = 'Initial location'; 
axis equal 
axis xy 
xlabel('endCoordinatesx'); 
ylabel('endCoordinatesy'); 
title('2D Map of Original locations'); 

% 2D plot of final target locations 
Xf= Design.endCoordinatesX; 
Yf= Design.endCoordinatesY; 
values = hist3(double([Xf(:) Yf(:)],[30 40])); 
imagesc(values) 
contourf(values) 
c= colorbar; 
c.Label.String = 'Final location'; 
axis equal 
axis xy 
xlabel('endCoordinatesx'); 
ylabel('endCoordinatesy'); 
title('2D Map of final locations'); 

ответ

0

Если я хорошо понял вашу проблему, вы хотите, чтобы сделать третий участок, представляющий разницу между двумя наборами данных.

То, что вы должны сделать, чтобы получить общие контейнеры для всех гистограмм вы вычисляете:

% find common centers for the two datasets 
[~, centers] = hist3(cat(2,[X(:) ; Xf(:)],... 
          [Y(:) ; Yf(:)]),... 
        [30 40]); 

% then you can calculate the histogram for each set of data : 
originalvalues = hist3([X(:) Y(:) ], centers); 
values   = hist3([Xf(:) Yf(:)], centers); 

% finaly, compute the difference between the two (now the bins are "aligned") 
differenceValue = values - originalvalues; 
+0

Спасибо @beesleep! Это очень помогло! – Mraquel

Смежные вопросы