Plotting surf figure, with 2 matrix and one vector. Position/Force over time.
2 views (last 30 days)
Show older comments
Anders Mahler
on 31 Oct 2014
Commented: Star Strider
on 7 Nov 2014
Trying to plot the below, but am getteing a wierd looking figure shape, does anybody know why?
set(gcf,'Renderer','painters')
figure (1)
surf(MatDecendingPosition, tid,MatDecendingForce)
where "tid" is a time vector, while "MatDecendingPosition" and "MatDecendingForce" are 2 3x220 matrix. Attached the value. Best regards Anders Mahler
0 Comments
Accepted Answer
Star Strider
on 31 Oct 2014
If you want force and position as functions of time, I would use plot3 rather than surf:
figure(1)
plot3(MatDecendingPosition, MatDecendingForce, tid)
grid on
xlabel('Position')
ylabel('Force')
zlabel('Time')
The position-force plot produces an interesting surface:
figure(2)
mesh(MatDecendingPosition, MatDecendingForce)
grid on
xlabel('Position')
ylabel('Force')
Your data are discontinuous, so it will likely be impossible to produce a smooth surface over the entire range of your data.
More Answers (2)
Orion
on 31 Oct 2014
Edited: Orion
on 31 Oct 2014
when you use surf, you want to see a surface Z according two others datas X, Y.
surf(X,Y,Z) means you will surf the matrix Z against the matrices of the same size X,Y (or the vectors X,Y), see meshgrid too convert vectors to matrices in order to surf.
Seeing your data (and your question), I think you want to do
figure;
subplot(211)
plot(tid',MatDecendingForce)
title('Force');
xlabel('time');
subplot(212)
plot(tid',MatDecendingPosition)
title('Position');
xlabel('time');
Orion
on 31 Oct 2014
ok, so you want to use plot3 ?
figure;
Colors = {'b','r','g'};
for i=1:3
plot3(tid',MatDecendingPosition(:,i),MatDecendingForce(:,i),Colors{i});
hold on;
end
xlabel('time');
ylabel('Position');
zlabel('Force');
grid
legend('result 1','result 2','result 3')
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!