MATLAB: Adding fractions to axis tick marks

axisMATLAB

How do you turn the tick mark labels into fractions rather than decimals. Take the following code for example. I would like the tick mark to remain in their current location but display their associated fraction instead.
x=.1:.1:.5
y=1:5
clf
plot(x,y,'color','r','linewidth',2)
set(gca, 'XTick', [1/16 1/8 3/16 1/4 5/16 3/8 7/16 1/2])

Best Answer

If you are using R2014b or later, you
set(gca, 'TickLabelInterpreter', 'latex', 'XTickLabel', {'$\frac{1}{16}$', '$\frac{1}{8}$', '$\frac{3}{16}$', '$\frac{1}{4}$', '$\frac{5}{16}$', '$\frac{3}{8}$', '$\frac{7}{16}$', '$\frac{1}{2}$'})
If you are using an earlier version, you could go through some trouble to text() the individual labels in place, because in those earlier versions, individual text() could have an interpreter but TickLabelInterpreter could not be set. So in those earlier versions it would probably be easier to
set(gca, 'XTickLabel', {'1/16' '1/8' '3/16' '1/4' '5/16' '3/8' '7/16' '1/2'})