bar3 x and y axis

56 views (last 30 days)
Alex
Alex on 12 Jan 2012
Commented: Rahul on 4 May 2023
I'm trying to create a 3D histogram with bar3 (I don't have the statistic toolbox so I can't use hist3). My data is a 10x10 matrix. Thus I get a 3d hist with x and y axis going from 1 to 10. I would like to change those value to the real value of my variable (0 to 3 and 0 to 100) but I can't use Xlim and Ylim (It also change which are the bar plotted) Anyone has an idea ?
Alex

Accepted Answer

the cyclist
the cyclist on 12 Jan 2012
Does this do what you want?
bar3(rand(3,4))
set(gca,'XTickLabel',[10 20 30 40])
set(gca,'YTickLabel',[100 200 300])
  1 Comment
Roberto Chang
Roberto Chang on 23 Aug 2021
Hello, tons of bikes for you! this was helpful for me.

Sign in to comment.

More Answers (2)

Alex
Alex on 12 Jan 2012
Do the job great ! Thanks for that

Austin
Austin on 17 Jun 2013
This doesn't really work. I'm trying to plot Z bars against X and Y with more than a few data points. I would like the x and y axis labels to be the real x and y data. Can you help??
Here's and example:
format shortg
xAxis = sort(10*rand(20,1));
sprintf('XMin: %5f xMax: %5f', [min(xAxis) max(xAxis)])
yAxis = sort(30*rand(30,1));
sprintf('yMin: %5f yMax: %5f', [min(yAxis) max(yAxis)])
bar3(rand(20,30));
set(gca,'XTickLabel',xAxis)
set(gca,'YTickLabel',yAxis)
  2 Comments
the cyclist
the cyclist on 17 Jun 2013
Not very many people will see your question, which is buried as an "answer" to a 5-month-old question. I suggest you start a brand-new question, and perhaps reference this question with a link.
Rahul
Rahul on 4 May 2023
I am guessing you want the contents of the xAxis and yAxis arrays to appear as the labels for the corresponding x and y axis . I simply used a string() method to convert the numeric array to a string and placed that.
set(gca,'XTickLabel',string(xAxis))
set(gca,'YTickLabel',string(yAxis))

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!