Как отделить цветную панель ошибок от Matlab
Учитывая следующий пример кода:
x = 0:pi/10:pi;
y = sin(x);
e = std(y)*ones(size(x));
figure
errorbar(x,y,e)
Как вы можете покрасить линию в отличие от горизонтальных линий?
Я старался
errorbar(x,y,e,'--mo')
Но это меняет их всех вместе...
2 ответа
Решение
Получить ручку к errorbar
объект. У него есть два дочерних элемента, соответствующих графику данных и столбцам ошибок соответственно. Тогда вы можете установить цвет каждого отдельно.
h = errorbar(x,y,e) %// a color spec here would affect both data and error bars
hc = get(h, 'Children')
set(hc(1),'color','b') %// data
set(hc(2),'color','g') %// error bars
В 2014b объект ошибки не имеет дочерних элементов. Один (безобразный) способ обойти это - снова нарисовать функцию другим цветом. Фактически это отображает функцию с новым цветом поверх функции со старым цветом.
hold on;
errorbar(x, y, e, 'r'); % // The color here will stay for the error bars
plot(x, y, 'b'); %// Here we change the color of the original function