How do I get exponent values for log axes in MATLAB R2014b?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
MathWorks Support Team
am 27 Aug. 2014
Bearbeitet: MathWorks Support Team
am 25 Feb. 2021
I have a plot created using the 'semilogx' function. I am trying to access the exponent values for the tick labels for the 'x' axis. In MATLAB R2014a, I could access the exponent values using the command:
ticks = get(gca,'XtickLabel') which would return a character array of exponent values for the ticks. How do I do the same task in MATLAB R2014b?
Akzeptierte Antwort
MathWorks Support Team
am 25 Feb. 2021
Bearbeitet: MathWorks Support Team
am 25 Feb. 2021
Starting in R2014b, the XTickLabel, YTickLabel, or ZTickLabel properties for a log axis contain cell arrays with the full TeX markup used for the tick labels. In previous releases these properties contain a character array with only the exponent values for the tick marks.
Starting in R2014b, this code returns the tick labels a cell array with the full TeX markup:
semilogx(1:10000);
ax = gca;
ticks = ax.XTickLabel
ticks =
'10^{0}'
'10^{1}'
'10^{2}'
'10^{3}'
'10^{4}'
class(ticks)
ans =
cell
In R2014a and earlier, this code returns a character array with the exponent values:
semilogx(1:10000);
ax = gca;
ticks = get(ax,'XTickLabel')
ticks =
0
1
2
3
4
class(ticks)
ans =
char
To extract just the exponent values from the tick label property, use the regexprep function with the following syntax.
expression = '\d*\^\{(\-?\d*)\}';
replace = '$1';
exponents = regexprep(ticks,expression,replace)
exponents = '0' '1' '2' '3' '4'
Documentation for the regexprep function is available at the following link:
https://www.mathworks.com/help/matlab/ref/regexprep.html
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Line Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!