1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| x = 1:1E4:1E5;
y = 5*rand(1,numel(x));
figure
plot(x,y);
% Récupération des xtick
xt = get(gca,'xtick');
% Supression des labels correspondants
set(gca,'xticklabel','');
% Cas particulier si xt = 0
idx = xt == 0;
% Puissance de chaque xt
p = floor(log10(abs(xt)));
xtL = round(xt.*10.^(-p));
% Cas de xt = 0
p(idx) = 0;
xtL(idx) = 0;
% Création des nouveaux labels
str = strcat(num2str(xtL(:)),{'x10^'},num2str(p(:)));
% Cas xt = 0
str{idx} = '0';
% Récupération des dimensions du graphiques selon
% y pour bien placer les nouveaux labels
yl = ylim;
yt = yl(2)-yl(1);
text(xt,repmat(yl(1)-.05*yt,1,numel(xt)),str,'hor','center') |
Partager