X Y Z Surface Plot Problem

3 views (last 30 days)
Bora Tek
Bora Tek on 20 Apr 2012
Hello Friends,
I need your assistance about plotting x y z axis surface graphic
I have tunnel data on excel; Tunnel lenght, Temperature, Time
I want to show these datas on matlab
here is my datas
Thank you so much

Accepted Answer

Matt Tearle
Matt Tearle on 20 Apr 2012
data = xlsread('filename.xlsx'); % read in everything (numeric)
t = data(1,2:end); % first row (except first element)
l = data(2:end,1); % first column (except first element)
temp = data(2:end,2:end); % actual data in the table
surf(t,l,temp) % make surface plot
  2 Comments
Bora Tek
Bora Tek on 20 Apr 2012
Thank you so much Matt Tearle :)
I'm a rookie on matlab by the way :)
Matt Tearle
Matt Tearle on 20 Apr 2012
Welcome. No problem, we all start somewhere :)
http://www.mathworks.com/matlabcentral/answers/8026-best-way-s-to-master-matlab

Sign in to comment.

More Answers (2)

Bora Tek
Bora Tek on 20 Apr 2012
Thank you so much for your help Matt, This link will help me im sure :) I have one more question, can i change x axis position with y axis? if i can do that, do i have to change my excel data? i want to show my datas like this.
Thank you
  1 Comment
Matt Tearle
Matt Tearle on 23 Apr 2012
You mean exchange the x and y axes? Yes, just transpose your data matrix:
temp = data(2:end,2:end)';
surf(l,t,temp)

Sign in to comment.


Bora Tek
Bora Tek on 29 Apr 2012
Hi Matt,
I changed the code as you said;
data = xlsread('sıcaklık100mw.xlsx');
t = data(1,2:end);
l = data(2:end,1);
temp = data(2:end,2:end);
surf(l,t,temp)
But i got this error message:
Error using surf (line 75)
Data dimensions must agree.
  1 Comment
Matt Tearle
Matt Tearle on 30 Apr 2012
Note the transpose operator (') at the end of the command temp = data(2:end...
temp is a matrix with m rows and n columns. When making a surface plot, the m rows are taken to be the values at m y locations; the n columns are taken to be the values at n x locations. So when you do surf(x,y,temp), the x vector should have n elements, and y should have m elements. To switch x and y, you need to flip (transpose) the matrix *and* the x and y vectors in the surf command.

Sign in to comment.

Categories

Find more on 2-D and 3-D 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!