why is my plot not showing?
조회 수: 4 (최근 30일)
이전 댓글 표시
Im trying to plot iteration on the x-axis vs error_delta on the y-axis, but nothing shows, they are inside the while loop.
%root for f(x) = cos(x)
paso = 0.5e-10;
N = 100;
x= 1.0; %initial guess.
i = 0;
eps = 1;
root_delta = 4.6;
figure(1);
hold on;
while eps >= paso && i <= N
y = x - (cos(x)/(-sin(x)));
eps = abs(y-x);
x= y;
error_delta = abs(root_delta - x);
i = i+1;
disp(' root iteration');
disp([x',i',error_delta']);
semilogy(i,error_delta);
xlabel('iterations');
ylabel('error Delta');
end
disp(y);
disp(i);
댓글 수: 0
채택된 답변
Walter Roberson
2018년 2월 13일
i = i+1;
error_delta(i) = abs(root_delta - x);
semilogy(1:i,error_delta);
drawnow()
추가 답변 (1개)
Image Analyst
2018년 2월 13일
You need to index x and y. You're just overwriting the same scalar values so there is never an array to plot.
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!