Plotting Negative Values in a Loop
2 views (last 30 days)
Show older comments
Trying to plot values for a robot gripper using a for loop with a pause to get a graph that moves. Was just wondering why I can't plot these negative values.
The code used to plot was:
figure(3)
hold on
for i = 0:0.5:10
plot(x(i), y_fit(i))
pause(0.5)
hold off
end
The variables used were:
L = 1;
T = [0 2 5 8 10];
Angle = [-45 13 45 50 60];
Angle2 = [45 41 69 106 120];
a = polyfit(T, Angle, 3);
b = polyfit(T, Angle2, 3);
T = 0:0.5:10;
x = L*(cos(theta_Angle)) + L*cos((theta_Angle2));
y = L*(sin(theta_Angle)) + L*(sin(theta_Angle2));
p = polyfit(x, y, 3);
y_fit = polyval(p, x);
theta_Angle = (a(1)*(T.^3))+(a(2)*(T.^2))+(a(3)*T)+a(4);
theta_Angle2 = (b(1)*(T.^3))+(b(2)*(T.^2))+(b(3)*T)+b(4);
0 Comments
Answers (2)
Dennis
on 4 Jun 2019
As KSSV already pointed out you need integers as array indices.
Additionally i would recommend to use markers to make your data points visible and move the 'hold off' out of the loop:
hold on
for i = 1:1:10
plot(x(i), y_fit(i),'marker','*')
pause(0.5)
end
hold off
0 Comments
See Also
Categories
Find more on Line Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!