YAxis Exponent doesnt change after flipping YTick
조회 수: 3 (최근 30일)
이전 댓글 표시
I need to reverse the yaxis index, then flip the image. However the exponential disappears after the YDir is set to 'Reverse'. The MATLAB suggested dot notation is not working in the following example that should accomplish all of these tasks:
open 'myfig.fig'
figure(1); subplot 311; % I don't think this matters here, but maybe doing this in a subplot is an issue
yTicks = get(gca, 'YTick'); % get yaxis index
yTicksReverse = sort(yTicks, 2, 'descend'); % reverse yaxis index
set(gca, 'YTickLabel', num2str(yTicksReverse')); % set reversed index to figure
set(gca, 'YDir', 'reverse'); % flip image, along with the y axis.
ax = gca;
ax.YAxis.Exponent = 6;
After this code is run, looking at the ax.YAxis values does show that the exponent assignment has been set to 6, however it does not change on the figure itself :(
댓글 수: 0
답변 (1개)
Shruti Shivaramakrishnan
2017년 7월 31일
편집: Walter Roberson
2017년 7월 31일
The following MATLAB Answers Discussion might prove helpful: https://www.mathworks.com/matlabcentral/answers/14172-converting-x-axis-to-exponential-values-of-10-5
Also, if it is helpful, converting the Tick values to a decimal value can be done using :
>> ax.XAxis.TickLabelFormat = '%.60f';
Then if you'd like the Exponent to be displayed:
>> ax.XAxis.Exponent = 6;
댓글 수: 3
Steven Lord
2017년 7월 31일
Define "no longer works" -- does it throw an error? If so what is the FULL text of the error message? Does it issue a warning? Ditto on the full message in that case. Does it do something else (and if so, describe what EXACTLY it does.)
Walter Roberson
2017년 7월 31일
Question: is this XAxis Exponent or YAxis Exponent that we are talking about?
The use of the axis exponent is disabled when you set tick labels manually.
참고 항목
카테고리
Help Center 및 File Exchange에서 Axis Labels에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!