Filter löschen
Filter löschen

Explanation of surf plot

2 Ansichten (letzte 30 Tage)
Louise Wilson
Louise Wilson am 28 Jul. 2023
Bearbeitet: Cris LaPierre am 28 Jul. 2023
I used the following code to plot some example data:
A(1,1:51)=0:1:50;
A(2,2:51)=1;
A(3,2:51)=2;
A(4,2:51)=3;
A(5,2:51)=4;
A(6,2:51)=5;
A(7,2:51)=6;
A(8,2:51)=7;
A(9,2:51)=8;
A(10,2:51)=9;
A(1:10,1)=[0 1 2 3 4 5 6 7 8 9];
f=A(1,2:51);
t=A(2:10,1);
d=(A(2:end,2:end))';
surf(t,f,d,'EdgeColor','none');
view(0,90)
xlim([0 10])
colorbar
I'd like to understand how I get the code to plot all of the data.
There are nine different values in matrix 'A', but only 1-8 are plotted. Why is that?
Thanks!
  3 Kommentare
Louise Wilson
Louise Wilson am 28 Jul. 2023
Sorry, but this doesn't help me... I can see how the variables are defined, but don't understand what is wrong about it.
Louise Wilson
Louise Wilson am 28 Jul. 2023
  • where x = 1, c = 1, which is what I desire - but for some reason, the final x data point (9) isn't plotted. I'd like to understand why that is, so I can remedy it.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Cris LaPierre
Cris LaPierre am 28 Jul. 2023
Bearbeitet: Cris LaPierre am 28 Jul. 2023
What if we simplify the code?
X = 0:9;
Y = 0:50;
A = ones(51,10) .* X;
surf(X,Y,A,'EdgeColor','none');
colorbar
surf colors the face between points. So if you have 10 point along x, there are 9 faces (0-1, 1-2, ..., 8-9).
  2 Kommentare
Joel Hottinger
Joel Hottinger am 28 Jul. 2023
I think the key here is the between the points line. This becomes very apparent if we have a 2x2 matrix:
a = [1,1;2,2];
surf(a)
view(2)
Louise Wilson
Louise Wilson am 28 Jul. 2023
Yup, I see now, thanks!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Line Plots finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by