2016-08-02 2 views
2

При использовании MATLAB кто-нибудь знает способ для рисования ошибок с тем же стилем строки данных?MATLAB Errorbars linestyle

Например, при использовании:

d = errorbar(x,y,y_error,'Linestyle', ':'); 

MATLAB возвращает строки данных в точечном стиле, в то время как бары в каждой из точек сплошные линии. Как сделать бары также быть пунктирной линией?

ответ

2

Вы можете использовать недокументированные Bar свойство ErrorBar объекта установить стиль линии:

d = errorbar(1:3, 1:3, 1:3, 'LineStyle', ':'); 

% Make the vertical bars dotted as well 
d.Bar.LineStyle = 'dotted'; 

% Valid values include: 'solid' | 'dashed' | 'dotted' | 'dashdot' | 'none' 

enter image description here

Или если вы просто хотите, чтобы быть таким же, как LineStyle вы указали вы могли бы также использовать недокументированные Line свойство:

d.Bar.LineStyle = d.Line.LineStyle 

Для грядущих событий повторно ссылки, вы можете получить список всех свойств и методов для графического объекта (без документов или нет) путем получения meta.class для объекта:

cls = meta.class.fromName(class(d)); 

% List of all properties 
cls.PropertyList 

% List of all methods 
cls.MethodList 

Часто можно найти и модифицировать различные части сложного участка объект, используя недокументированные свойства, найденные таким образом.

+0

Я собирался ответить тем же! Я нашел это недокументированное свойство, посмотрев на 'd = errorbar (...)', вызывая 'struct (d)', что показывает больше об объекте 'ErrorBar'. Там я нашел много свойств, первым из которых является 'd.Bar', который является« LineStrip », который, в свою очередь, имеет свойство« LineStyle », которое может принимать значения« solid »| «пунктир» | «пунктир» | 'dashdot' | «None''. Вы можете добавить эту информацию в свой ответ, чтобы выяснить происхождение и как другие могут сами исследовать эти ситуации. – Erik

+0

действительно спасибо, я не знал об этом свойстве, и теперь я понимаю, почему, учитывая, что он недокументирован. Большое спасибо, спасибо. – Transagonistica

+0

@Erik. Лучший способ получить информацию - через «meta.class». Обновлен ответ, чтобы показать, как это сделать. – Suever