MATLAB: How to plot data with multiple colors using the HIGHLOW function in the Financial Toolbox 3.7.1 (R2010a)

candleFinancial Toolbox

I have a financial time series that I plot using the HIGHLOW function.
c = yahoo;
data = fetch(c, 'GOOG',{'Open','High','Low','Close'},'4/2/2010',today);
ts = fints(data(:,1),data(:,2:end),{'Open','High','Low','Close'});
highlow(ts);
I would like to highlight a particular element by changing its color.
hold on
tsPnt = ts('4/9/2010');
highlow(tsPnt,'r');
The axes do not get held correctly. How can I display this appropriately?

Best Answer

To ensure that the axes and ticks are held appropriately, save the ticks after the initial plot, and restore them after the final plot. The following code demonstrates this:
c = yahoo;
data = fetch(c, 'GOOG',{'Open','High','Low','Close'},'4/2/2010',today);
ts = fints(data(:,1),data(:,2:end),{'Open','High','Low','Close'});
highlow(ts);
orig_ticks = get(gca,'XTick');
hold on
tsPnt = ts('4/9/2010');
highlow(tsPnt,'r');
axis auto
set(gca,'XTick',orig_ticks);