Overlapping quiver plot at same scale

22 vues (au cours des 30 derniers jours)
Jessica Hiscocks
Jessica Hiscocks le 3 Avr 2017
I'm overlaying two quiver plots using the following code, but the scale between the two is not identical I plotted the data as one quiver plot (all in black, code not shown) and then split it into positive and negative values (plot contains red), at which point the red arrows scaled up. How can I force these to maintain the same scale? Basically my end goal is to colour all negative values red on the plot.
figure;
h1=quiver(xt,yt,quiverXt,-1*quiverYt,2,'filled','k');
hold on
h2=quiver(xc,yc,quiverXc,-1*quiverYc,2,'filled','r');
hold off

Réponses (1)

Jessica Hiscocks
Jessica Hiscocks le 3 Avr 2017
solved it based on another answer previously posted. The key is basically you have to set scale to zero and then scale both quivers after plotting.
figure;
h1=quiver(xt,yt,quiverXt,-1*quiverYt,0,'filled','k');
hold on
h2=quiver(xc,yc,quiverXc,-1*quiverYc,0,'filled','r');
hold off
scale=5;
hU1 = get(h1,'UData');
hV1 = get(h1,'VData');
set(h1,'UData',scale*hU1,'VData',scale*hV1)
hU2 = get(h2,'UData');
hV2 = get(h2,'VData');
set(h2,'UData',scale*hU2,'VData',scale*hV2)

Catégories

En savoir plus sur Vector Fields dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by