Question

I'd like to plot data x & y with errorbars, ebar, and its fit, yfitted, on a semilog plot. This doesn't seem to work:

figure;
hold on;
errorbar(x,y,ebar);
semilogy(x,yfitted);

Instead of semilog plot I get a linear plot. What should I be doing differently?

Was it helpful?

Solution

try

h = errorbar(x,y,ebar);
set(get(h,'Parent'), 'YScale', 'log')

or

ax = axes();
errorbar(ax, x,y,ebar);
set(ax, 'YScale', 'log');

OTHER TIPS

This is what the documentation says.

"If you attempt to add a loglog, semilogx, or semilogy plot to a linear axis mode graph with hold on, the axis mode will remain as it is and the new data will plot as linear"

I would suggest that you just reverse the order of your plotting, that is.

semilogy(x,yfitted);
hold on;
errorbar(x,y,ebar);
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top