How to get different scales on the same axis?

17 views (last 30 days)
I would like to have two scales on the same x-axis. I want the scale to be 100 from 0 to 1000 (i.e. 0,100,200,...,1000). And then I want the scale to be 1000 from 1000 to 20,000 (i.e. 1000,2000,...20,000). Note: the client does not want a semi-logarithmic scale (looks to complicated for him ;) ). Does someone have any ideas?

Answers (2)

Radha Krishna Maddukuri
Radha Krishna Maddukuri on 9 Jun 2015
This can be done by modifying the XTick property of the axis. Try the following. A similar approach can be used for your usecase.
x = linspace(0,20,1);
y = cos(x);
plot(x,y)
x = linspace(0,20,100);
y = cos(x);
plot(x,y)
ax = gca
ax.XTick = [0:1:5 6:2:20]

Ingrid
Ingrid on 9 Jun 2015
Edited: Ingrid on 9 Jun 2015
just use
set(gca,'xTick',[0:100:1000,2000:1000:20000]);

Categories

Find more on 2-D and 3-D 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!