XLim for bar plot with several data series

I created a bar plot with three data series and bins 0 to 20. The automated process creates a plot with bins -5 to 25. I'm wondering why and I'm wondering how I could set the XLim property? b = bar(...) and b.XLim doesn't work. b(1).XLim doesn't work either.
bins = 0:20
figure;
b2 = bar(bins,[s1 s2 s3],'hist','FaceColor','flat');
s1, s2, and s3 are vectors (data series).
XLim = [0, 20];
gives me the following error message:
Expected one output from a curly brace or dot indexing expression, but there were 3 results.
Otherwise:
b2(1).XLim = [0, 20]
Unrecognized property 'XLim' for class 'matlab.graphics.primitive.Patch'.
As well as:
b2(1).XLim = {[0, 20] , [0, 20] , [0, 20]}
Unrecognized property 'XLim' for class 'matlab.graphics.primitive.Patch'.
b2.XLim = {[0, 20] [0, 20] [0, 20]}
Expected one output from a curly brace or dot indexing expression, but there were 3 results.
b2.XLim = {[0, 20] ,[0, 20], [0, 20]}
Expected one output from a curly brace or dot indexing expression, but there were 3 results.
Does anyone know how I can set the XLim value? It works with the Plot Tools.
Thank you very much in advance!

 Risposta accettata

ax = gca;
ax.XLim = [0, 20];
Did the trick! Thank you Star Rider, you brought me onto the right path!

Più risposte (1)

Since 'XLim' is an axes property, do this:
figure
bar(rand(1,200), 'hist','FaceColor','flat')
XL = get(gca, 'XLim')

Categorie

Scopri di più su Creating, Deleting, and Querying Graphics Objects in Centro assistenza e File Exchange

Prodotti

Release

R2018a

Richiesto:

ID#
il 20 Ott 2018

Risposto:

ID#
il 21 Ott 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by