Quiver lines on contour not showing
조회 수: 3 (최근 30일)
이전 댓글 표시
Hi there, I have a contour plot which I successfully generated. However when I turn on the quiver lines, they do not show up on the plot. Below is my code:
[x,y] = meshgrid([1:0.1:6],[1:0.1:6]); %Creates axis.
f = 8.9875517873681764*10^9;
PC1 = 1e-6; %Charge of point one.
PC2 = 1e-6; %Charge of point two.
PC3 = 0.5e-6; %Charge of point three.
n = 20; %N-number of levels.
%Charge of individual points.
Charge1 = (f.*PC1)./sqrt((x-3).^2+(y-3).^2);
Charge2 = (f.*PC2)./sqrt((x-5).^2+(y-3).^2);
Charge3 = (f.*PC3)./sqrt((x-4).^2+(y-4).^2);
Sum = Charge1-Charge2+Charge3;
figure(1)
[px,py]=gradient(Sum);
contour(x,y,Sum,n)
hold on
quiver(x,y,px,py)
hold off
Does anyone have an idea why the quiver lines are not showing? Thanks.
댓글 수: 0
채택된 답변
Star Strider
2016년 5월 20일
There seems to be a problem with the way you’re calculating the gradient. Making these changes will allow you to see the vectors and the contour plot (that I temporarily turned into contourf to make it visible). I will defer to you to determine what you need to do to fix it with the vector scaling turned back on:
[px,py]=gradient(Sum, 1E+4, 1E+4); % Set Derivative Intervals
figure(1)
contourf(x,y,Sum,n)
hold on
quiver(x,y,px,py,0) % Turn Off Scaling
hold off
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Vector Fields에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!