axis equal - a bug in the function?
6 views (last 30 days)
Show older comments
Hi,
when executing following
plot(1:10)
axis equal
I'm getting a figure as below, which seems not to comply with the definition of the equal: "Use the same length for the data units along each axis"
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/470997/image.png)
0 Comments
Answers (2)
Peter Nave
on 26 Dec 2020
The units ARE the same, take a ruler and measure them on the monitor!
0 Comments
Bruno Luong
on 26 Dec 2020
Edited: Bruno Luong
on 26 Dec 2020
It is. The unit length is the same, not the total length of the axis.
If you want to enforce the limits use xlim/ylim commands after axis equal.
6 Comments
Bruno Luong
on 26 Dec 2020
Edited: Bruno Luong
on 26 Dec 2020
"you have same issue"
No he has not. You simply fail to understand what "axis equal" does despite of three people telling you what it suppose to do.
You are stuck in your onw logic which is NOT "axis equal" supposes to do.
Stephen23
on 26 Dec 2020
Edited: Stephen23
on 26 Dec 2020
"Rest my case - you have same issue. The scale is 20, but on your x axis, you have more than 20 points."
The axis documentation does not state anything about how many units (i.e. the range) will be displayed for each of the axes, it only defines that their unit lengths will be the same: "equal Use the same length for the data units along each axis." For some reason you seem to be confusing the data range with unit length.
The statement "you have more than 20 points." is in any case incorrect: there are exactly eleven data points plotted on the axes in my previous comment (I just added a marker so that everyone can count them).
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!