MATLAB Answers


Adding and customisng a single tick mark

Asked by Jason
on 21 Mar 2018
Latest activity Commented on by Jason
on 22 Mar 2018
I want to add a single tick mark to the current tickmarks:
set(gca, 'XTick', sort([0.018, get(gca, 'XTick')]));
But I want its text to be smaller and a different colour to the rest. Is this possible


Sign in to comment.

1 Answer

Answer by Walter Roberson
on 21 Mar 2018
 Accepted Answer

new_tick = 0.018;
new_fontsize = 6;
new_tick_rgb = [0.28, 0.02, 0.03]; %Bulgarian Rose
ax = gca;
xruler = ax.XRuler;
old_fmt = xruler.TickLabelFormat;
old_xticks = xruler.TickValues;
old_labels = sprintfc(old_fmt, old_xticks);
new_label = sprintf(['%s%g,%g,%g%s%d%s' old_fmt], '\color[rgb]{', new_tick_rgb, '}\fontsize{', new_fontsize, '}', new_tick);
all_xticks = [old_xticks, new_tick];
all_xlabels = [old_labels, new_label];
[new_xticks, sort_order] = sort(all_xticks);
new_labels = all_xlabels(sort_order);
set(xruler, 'TickValues', new_xticks, 'TickLabels', new_labels);

  1 Comment

Perfect, thankyou very much

Sign in to comment.