changing ticks position on the graph

1 visualizzazione (ultimi 30 giorni)
Wade
Wade il 28 Mar 2023
Commentato: Wade il 29 Mar 2023
Hi,
I have a problem that seems to be easy. I have created a heat map in form of matrix but the scale I want to set from -400 to 400. I was able to change the axes numbers but the ticks are at the centre of each square instead to be in between them. How to do it?
Thank you,
Regards,
Matti
  3 Commenti
Wade
Wade il 29 Mar 2023
thank you for your advice!
BW,
Matti

Accedi per commentare.

Risposte (1)

Bjorn Gustavsson
Bjorn Gustavsson il 29 Mar 2023
If you have coordinates for the edges of the cdata-elements then you can either adjust things manually to get what you want:
dx = 80;
dy = 80;
heatmap(x+dx/2,y+dy/2,cdata)
set(gca,'xtick',x,'ytick',y)
Or perhaps use pcolor instead of heatmap:
dx = 80;
dy = 80;
pcolor([x(:)',x(end)+dx],[y(:),y(end)+dy],cdata([1:end,end],[1:end,end])),shading flat
That should be rather close, I hope. This centre-of-pixel vs edge-of-pixel is a problem that will always persist and never have a solution that satisfies every user in all cases - we just have to learn to work around the given behaviours to get the output that corresponds to our use-cases.
HTH
  1 Commento
Wade
Wade il 29 Mar 2023
I will try these codes,
thanks a lot,
BW,
Matti

Accedi per commentare.

Categorie

Scopri di più su Data Distribution Plots in Help Center e File Exchange

Prodotti


Release

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by