How to change X axis in the form of percentage

22 views (last 30 days)
In this plot i want my x axis in the form of percentage value where it's range start with [77,146], 77 as 0 and 146 as 100%, without changing curve's y axis

Answers (1)

Star Strider
Star Strider on 8 May 2021
Try something like this —
x = linspace(77, 146);
y = -60 - 15*sin(2*pi*x/50);
figure
plot(x, y)
Ax = gca;
xt = Ax.XTick;
xtnew = (xt - min(xt))/(max(xt)-min(xt)) * 100;
Ax.XTickLabel = xtnew;
.
  2 Comments
Steven Lord
Steven Lord on 8 May 2021
I'd use normalize rather than performing the calculations myself.
x = linspace(77, 146);
y = -60 - 15*sin(2*pi*x/50);
figure
plot(x, y)
xt = xticks;
normalizedX = normalize(xt, 'range', [0 100]);
xticklabels(normalizedX)
Star Strider
Star Strider on 8 May 2021
@Steven Lord — Thank you! I’ve used normalize (introduced in R2018a), however I didn’t think of using it here.

Sign in to comment.

Categories

Find more on Line 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!