Surfc error in plotting
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I am trying to use surfc to plot 3 variables-time, height, temp. I have imported these variables in from an excel worksheet and have converted them to arrays. When using surfc, I receive an error stating my Z values must have more than one row or column. This is what I have done so far:
temp=table2array(table(:,1)
height=table2array(table(:,2)
time=table2array(table(:,3)
[x,y]=meshgrid(time,height)
z=temp
surfc=(x,y,z)
Any help would be appreciated.
As a side note, I tried to use contour but found an error since my values are not purely in an ascending or descending order. Thanks!
0 Kommentare
Antworten (1)
Walter Roberson
am 4 Jan. 2018
Please do not use table as the name of a variable, especially when you are using table objects. Below I will use datatable()
temp = datatable{:,1};
height = datatable{:,2};
time = datatable{:,3};
heightvec = linspace(min(height), max(height));
timevec = linspace(min(time), max(time));
[x, y] = meshgrid(timevec, heightvec);
z = griddata(time, height, temp, x, y);
surf(x, y, z, 'edgecolor', 'none')
7 Kommentare
Walter Roberson
am 5 Jan. 2018
Your code extracts time from the third column of your data file. Please check your data file to verify that the time is stored in column 3. It is possible, but it would be unusual: time is usually before the data being me.
Siehe auch
Kategorien
Mehr zu Surface and Mesh Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!