MATLAB: How to replace x or y axis tick values with texts

xtickytick

I want to replace my yaxis tick values with texts.
x=[1,3,4,6]; y=[20,40,50,80]; Plot(x,y);
For this, I want to replace the ytick values with white, red, green, yellow instead of 20,40,50,80 respectively.

Best Answer

x=[1,3,4,6]; y=[20,40,50,80]; plot(x,y);
yticks([20,40,60,80])
yticklabels({'white', '\color{red}red', '\color{green}green', 'yellow'}); set(gca,'TickLabelInterpreter', 'tex')
ycat = categorical(y, [20 40 50 80], {'white', 'red', 'green', 'yellow'})
ycat = 1×4 categorical array
white red green yellow
plot(x, ycat)