Как получите значения экспоненты для осей журнала?

Начиная в R2014b, XTickLabel, YTickLabel или свойства ZTickLabel для логарифмической оси содержат массивы ячеек с полной разметкой TeX, использованной для меток в виде галочки. В R2014a и ранее, эти свойства содержат символьный массив только со значениями экспоненты для отметок деления.

Запуск в R2014bR2014a и ранее
semilogx(1:10000);
ax = gca;
ticks = ax.XTickLabel
class(ticks)
semilogx(1:10000);
ax = gca;
ticks = get(ax,'XTickLabel')
class(ticks)
ticks = 

    '10^{0}'
    '10^{1}'
    '10^{2}'
    '10^{3}'
    '10^{4}'

ans =

cell
ticks =

0
1
2
3
4

ans =

char

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

expression = '\d*\^\{(\-?\d*)\}';
replace = '$1';
exponents = regexprep(ticks,expression,replace)
exponents = 

    '0'
    '1'
    '2'
    '3'
    '4'

Смотрите также