Plotting surf figure, with 2 matrix and one vector. Position/Force over time.
Show older comments
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
Accepted Answer
More Answers (2)
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');
1 Comment
Anders Mahler
on 31 Oct 2014
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')
Categories
Find more on Surface and Mesh 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!