Hello, I am expecting to see 8X8 plot of a matrix, but instead of it plots 7X7. Edge data are not plotted, why?
m = [nan, nan, nan, nan, -.053, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, -0.0167, nan, nan, nan, nan, -0.0218, nan, nan, nan, nan, nan, nan, -0.02688, nan, -0.0248, -0.0224, -0.0314, -0.0211, nan, -0.0234, -0.0437, -0.00788, -0.0235, -0.02188, -0.0219, -0.02357, -0.0233, -0.0231, nan, -0.0382, nan, -0.0215, -0.0239, nan, -0.0355, nan, nan, nan, nan, 0.0622, -0.0245, -0.0228, nan, nan, nan, nan, nan, nan, nan];
M = reshape(m, 8, 8);
for k=1:64
k = find(isnan(M))';
M(k) = 0;
end
figure (2)
surface(M) % 2D view

1 commentaire

Stephen23
Stephen23 le 3 Avr 2017
Modifié(e) : Stephen23 le 3 Avr 2017
If you plot four points at the corners of a square, then you will get one square. You should count the nodes, not the squares.

Connectez-vous pour commenter.

 Réponse acceptée

KSSV
KSSV le 3 Avr 2017

0 votes

The plot is correct...in the below count the number of points:
figure (2)
surface(M) % 2D view
hold on
[X,Y] = meshgrid(1:8,1:8) ;
plot3(X,Y,M,'*r')
There are 64 points. What you are counting is number of squares.

4 commentaires

Roger Vota
Roger Vota le 3 Avr 2017
Thanks, it explained, but how to display matrix value as a square?
KSSV
KSSV le 4 Avr 2017
I didn't get your question..
Roger Vota
Roger Vota le 4 Avr 2017
how to plot matrix elements values as color coded squares without losing edges?
KSSV
KSSV le 4 Avr 2017
doc surf

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Labels and Annotations dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by