TickLabelFormat with exponential format without precision
古いコメントを表示
I would like to make a plot with x-y axes in exponential format with 0 precition, i.e., 10^{n}. If I used
ax.XAxis.TickLabelFormat='%0.0e",
matlab gives me a figure in a style of 1x10^{n}. I would like to remove "1x". If I use
ax.XAxis.TickLabelFormat='%g",
matlab sometimes gives me the format of "10^{n}" but sometimes it becomes like "0.00001".
How can I fix this format in "10^{n}"?
回答 (5 件)
Walter Roberson
2019 年 1 月 30 日
ax.XAxis.Exponent = 0;
A value of 0 is default when there is not much data, but when you specifically set the value of 0 then ax.XAxis.ExponentMode becomes 'manual' so it would know not to override the setting.
syrup
2019 年 1 月 30 日
0 投票
2 件のコメント
Walter Roberson
2019 年 1 月 30 日
Ah. In that case you will need to set xticks yourself, and you will need to set xtickslabels yourself. You cannot use TickLabelFormat for this purpose.
syrup
2019 年 1 月 31 日
just use logaritmic axis with semilogx:
i = 1:10;
x = 10.^i;
y = rand(1,numel(x));
figure;
hPlot = semilogx(x,y);
Here is the link: semilogx
syrup
2019 年 1 月 31 日
0 投票
3 件のコメント
Walter Roberson
2019 年 1 月 31 日
編集済み: Walter Roberson
2019 年 1 月 31 日
This is why you should set xticks and xticklabels yourself.
Luna
2019 年 1 月 31 日
Maybe latex interpreter looks better if you want. It does not give 10^2 but shows
.
set(gca,'TickLabelInterpreter', 'LaTeX');
syrup
2019 年 1 月 31 日
Ignacio Barranco Granged
2021 年 5 月 18 日
0 投票
I have a similar issue. I have various subplots, I use the same code to generate all of them (specifying the ticks), but I do not know why in the first one the axis is shown as 1x10^ while on the rest of subplots is only 10^.
Have you managed to find a solution?
Thanks!
カテゴリ
ヘルプ センター および File Exchange で Annotations についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!