File Exchange

image thumbnail


version (9.72 KB) by John Barber
Calculate ticks and ticklabels for specified limits, orientation and text size.


Updated 29 Mar 2011

View License

CALCTICKS calculates tick locations and generates tick labels for specified axis limits, orientation and text size. If not specified, CALCTICKS will use the limits and other properties of the current axes or supplied axes handle. Additional input parameters let the user control the style and displayed precision of the tick labels. CALCTICKS can calculate ticks for both linear and log-scaled axes.

CALCTICKS finds ticks at 'nice' intervals between the upper and lower data limits. In most cases, the interval and number of ticks chosen by CALCTICKS will not result in overlapping tick labels, unlike the values used by the MATLAB axes in 'auto' mode. Additionally, the user has some control over the displayed numerical precision of the tick labels, unlike the MATLAB default behavior.

Note that CALCTICKS does not include a mechanism to either draw the calculated ticks or to set the axes' tick and tick label properties. It simply returns a vector of ticks and a cell array of tick labels.

I have attempted to avoid problems due to numerical precision. The calculated ticks should never be outside of the original limits, and will fall exactly on the limits where possible.

Comments, bug reports and suggestions for improvement are welcome. The current scoring algorithm used to determine the best interval is somewhat convoluted. However, as noted above, the results are often superior to MATLAB's default behavior in that overlapping tick labels are a rare occurrence.

Cite As

John Barber (2020). calcticks (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (2)

Tsung-Hsi Wu

Chad Greene

This submission is well written and very well documented. It quite nicely solves the problem of creating ticks that are easy to read. Thank you for sharing.


- Fixed bug that caused log-scale ticklabels to be truncated
- Improved interval selection for log-scale ticks

MATLAB Release Compatibility
Created with R2010a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Inspired: quivermc, Antarctic Mapping Tools