How to re-scale the Axises when exporting "Values" from binscatter ??

1 view (last 30 days)
I am using the h= binscatter(x,y,N) with N=250 to plot my data (figure 1 below). After I created it I extract counts=h.Values to plot the contour(counts) - (figure 2 below).. Thus, I have a question. How to rescale my Axises in contour plot (figure 2) to have the same values as on Figure 1????
Many thanks
Figure 1:
Figure 2 ([M,h]=contourf(counts,5);):

Accepted Answer

Matteo Pellegri
Matteo Pellegri on 27 Feb 2021
I'm not sure I understand the question. Have you tried this?
xlim([x1 x2])
ylim([y1 y2])
  5 Comments
Matteo Pellegri
Matteo Pellegri on 27 Feb 2021
I understand now.
You can directly change it using
set(gca,'xtick',xmin:.1:xmax)
Alternatively you can create NxN matrices using meshgrid with the values you need and then plot using contourf
[X,Y] = meshgrid(linspace(xmin,xmax,250),linspace(ymin,ymax,250))
figure()
h = binscatter(x,y,N)
figure()
d=contourf(X,Y,h.Values)
Sergii Snegir
Sergii Snegir on 28 Feb 2021
Edited: Sergii Snegir on 1 Mar 2021
Dear Matteo,
thanks for the hint with set(gca,'xtick',xmin:.1:xmax).
I tried to implement it directly but in appears in wrong place and not stretched to the full axis,see image below:

Sign in to comment.

More Answers (0)

Categories

Find more on Contour Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!