2d scan plot in matlab
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Sumera Yamin
le 29 Jan 2021
Commenté : Sumera Yamin
le 2 Fév 2021
Hi,
I want to scan over 2 quantities lets say x and y. For every value of x, I scan over a range of y and record value z for every point. So I have an (x,y) grid and have z which is an x by y matrix. How would I do a 2D plot of over such quantities. Many thanks for any lead.
0 commentaires
Réponse acceptée
Star Strider
le 29 Jan 2021
What your Question lacks in clarity it makes up for in obfuscation.
2 commentaires
Star Strider
le 29 Jan 2021
Modifié(e) : Star Strider
le 29 Jan 2021
Using that code, try this:
figure
imagesc(tally)
set(gca, 'XTick',(1:size(tally,2)), 'YTick',(1:size(tally,1)))
lix = sub2ind(size(tally), ix2, ix1);
text(ix1,ix2,compose('%d', tally(lix)), 'HorizontalAlignment','center', 'VerticalAlignment','middle')
EDIT — (29 Jan 2021 at 17:31)
Updated plot code.
Plus de réponses (1)
Sumera Yamin
le 2 Fév 2021
Modifié(e) : Sumera Yamin
le 2 Fév 2021
2 commentaires
Star Strider
le 2 Fév 2021
The imagesc function and pcolor function are significantly different.
Compare these:
figure
imagesc(tally)
set(gca, 'XTick',(1:size(tally,2)), 'YTick',(1:size(tally,1)))
lix = sub2ind(size(tally), ix2, ix1);
text(ix1,ix2,compose('%d', tally(lix)), 'HorizontalAlignment','center', 'VerticalAlignment','middle')
and:
figure
pcolor(tally)
set(gca, 'XTick',(1:size(tally,2)), 'YTick',(1:size(tally,1)))
lix = sub2ind(size(tally), ix2, ix1);
text(ix1,ix2,compose('%d', tally(lix)), 'HorizontalAlignment','center', 'VerticalAlignment','middle')
The imagesc function is defined by the centres of the squares, the pcolor function is defined by the edges of the squares, so the pcolor plot is one less in each dimension.
Voir également
Catégories
En savoir plus sur Annotations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!