Locking figure axis for quiver loop
    4 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
I have code for figure with superimposition of temperature image and quiver plot in loop.
But it image shifts every loop if side arrows exceed length of 1 pixel. How i can lock image or scale arrows?
[x,y]=meshgrid(1:1:31,1:1:38);
k=4997;
cnt=0;
heat_conductivity=28;
d=4;
for i=1:k
    [dTdx,dTdy] = gradient(V(:,:,i));
    u(:,:,i) = -heat_conductivity*dTdx;
    v(:,:,i) = -heat_conductivity*dTdy;
end
f=figure('Renderer', 'painters', 'Position', [10 10 600 620]);
ax=gca;
ax.XLim = [1 38];
ax.YLim = [1 31];
%f.WindowState='maximized';
for i=1:k
    %figure
    imagesc(V(:,:,i));
    axis tight
    hold on
    q=quiver(x,y,v(:,:,i),u(:,:,i))
    %q.AutoScale='on';
    q.AutoScaleFactor=0.9;
    q.ShowArrowHead='on';
    %q.MaxHeadSize= 1;
    q.AlignVertexCenters='on';
    q.LineWidth=0.5;
    q.MaxHeadSize=1;
    q.Color='black';
    %axis tight
    colormap jet
    colorbar
    caxis([26 35])
    cnt=i;
    title(cnt);
    pause (0.1)
    clf;
end


4 Kommentare
  Adam
      
      
 am 19 Aug. 2019
				axis tight
in the loop is what caused the original behaviour, by fitting tightly around each new set of quivers
Antworten (0)
Siehe auch
Kategorien
				Mehr zu Audio and Video Data finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!