Want to plot a matrix as a 3D histogram or bar chart.

20 visualizzazioni (ultimi 30 giorni)
I have a matrix (A) of count values. It counts the number of times event (x,y) occurs during a process, where x & y are integer metrics with pre-defined, non-equal ranges (thus A is not square). That is, every time event (9,10) occurs, the accumulator (counter) array is incremented: A(9,10)=A(9,10)+1. I want to plot out the matrix A as a histogram (or bar chart) to examine and analyze the distribution of events. I am aware of bar3 and some MATLAB histogram plotting scripts but I don't see how to make them work, for this application. (I did search the download section here but didn't find what I want.)
  1 Commento
José-Luis
José-Luis il 15 Set 2016
Could you show an example of what you want and how exactly bar3() doesn' t work?

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 15 Set 2016
With a size of 128 by 1024, you might be better off using surf() than bar3(), or simply viewing it as an image instead of a 2.5-D rendering (a 3-D rendering of your 2-D array onto your 2-D flat screen monitor).

Più risposte (3)

Thorsten
Thorsten il 15 Set 2016
A = rand(9,10); % sample values
bar3(A)
  1 Commento
Dean Ranmar
Dean Ranmar il 15 Set 2016
Thanks. I've tried this and it doesn't work in my case. When I call bar3, I get a 2D figure for some reason. I tried the specific code lines you suggested, adjusted to my array size (128x1024) and it works. My test case is fairly sparse (few samples) and that may be the problem, I'll try loading the matrix with more values and see if that helps.

Accedi per commentare.


Steven Lord
Steven Lord il 15 Set 2016
As of release R2016b, the histogram and histogram2 functions can create a histogram using either raw data to be binned or precomputed bin counts. See the Release Notes for more information.

Dean Ranmar
Dean Ranmar il 15 Set 2016
Thank you! I completely forgot about surf. It worked like a charm.

Community Treasure Hunt

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

Start Hunting!

Translated by