Setting axes in bar function

26 Ansichten (letzte 30 Tage)
abidi Mohamed
abidi Mohamed am 1 Jun. 2014
Kommentiert: Star Strider am 2 Jun. 2014
Exemple
x=0:1:20
y=1;.9999999;.9999998;.9999997;.9999996;.9999996;.9999995;.9999994;.9999993;.9999992;.9999991;.9999991;.9999991;.9999991;.9999991;.9999991;.9999991;.9999991;.9999991;.9999990;.9999990]
bar(x,y)
-----------------------------------------------
The variation of my function is very small, and the values are very precise (1e-10)
I want to customize the way in which tick labels appear in Matlab plot axes
  • 1/ modify the x and y axes limits (from min value to max value)
  • 2/ display 10 decimal digits in y and x axes

Akzeptierte Antwort

Star Strider
Star Strider am 1 Jun. 2014
Bearbeitet: Star Strider am 1 Jun. 2014
This works:
figure(1)
bar(x,y)
axis([-0.5 20.5 min(y)-2E-8 max(y)])
xt = {get(gca, 'YTick')}
for k1 = 1:10
xts{k1} = (num2str(xt{1}(k1),'%.10f'));
end
set(gca, 'YTick', cell2mat(xt), 'YTickLabel', xts, 'FontSize',7)
producing:
  1 Kommentar
Star Strider
Star Strider am 2 Jun. 2014
‘Star Strider: y0=1 not 0.999999’
Overlooked that.
Fixed now:
figure(1)
bar(x,y)
axis([-0.5 20.5 min(y)-5E-8 max(y)])
yt = {get(gca, 'YTick')}
for k1 = 1:size(yt{1},2)
xts{k1} = (num2str(yt{1}(k1),'%.10f'));
end
set(gca, 'YTick', cell2mat(yt), 'YTickLabel', xts, 'FontSize',7)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

aneps
aneps am 1 Jun. 2014
Bearbeitet: aneps am 2 Jun. 2014
use xlim, ylim options... you can simply give
xlim=([xmin xmax]);
ylim=([ymin ymax]);
or
set(gca,'XLim',[xmin xmax]);
set(gca,'XTick',[xmin:interval:xmax]);
set(gca,'YLim',[ymin ymax]);
set(gca,'YTick',[ymin:interval:ymax]);
for decimal places
xn=get(gca,'xtick');
set(gca,'xticklabel',sprintf('%.10f |',xn));
yn=get(gca,'ytick');
set(gca,'yticklabel',sprintf('%.10f |',yn));

abidi Mohamed
abidi Mohamed am 1 Jun. 2014
thank you aneps have you any solution for my second problem "display 10 decimal digits in y and x axes"
  3 Kommentare
Star Strider
Star Strider am 2 Jun. 2014
...posted 21 hours after mine...
abidi Mohamed
abidi Mohamed am 2 Jun. 2014
Bearbeitet: abidi Mohamed am 2 Jun. 2014
aneps,Star Strider: thank you very much for your help
Star Strider: y0=1 not 0.999999

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Graphics Object Properties 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!

Translated by