how to draw 3d histogram of an image ad shown in figure
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Respuesta aceptada
Walter Roberson
el 26 de Feb. de 2021
Histogram implies that you are binning the data, and the coordinates are associated with the edge or central value of the bin. 3D histogram implies that you are binning the data with respect to two different coordinates.
However, in the diagrams you show, at least to the resolution you present, there is no binning of data. We can see that one of the independent axes is length 600 and the other is length 800, but uint8 has at most 256 different values, and int16 or uint16 there is no obvious reason why you would bin in widths of 41 input values in one direction and in widths of 55 input values in the other direction.
It does not seem likely that you want histograms at all. I would suggest that you are instead looking for bar charts.
a = imread('flamingos.jpg');
a = imresize(a, 0.25);
h = bar3(a(:,:,1)); set(h, 'EdgeColor', 'none'); title('red')
4 comentarios
Image Analyst
el 14 de Mzo. de 2021
You could also replace
r = a(:,:,1);
g = a(:,:,2);
b = a(:,:,3);
with
[r, g, b] = imsplit(a);
Más respuestas (1)
Image Analyst
el 21 de Feb. de 2021
This is done by the histogram2() function. Check out the help for examples. Let us know if you can't figure it out for your data, and attach your data after reading this:
5 comentarios
Image Analyst
el 26 de Feb. de 2021
What you said abount histogram doesn't make sense. But perhaps you want to do something like the attached demo. Or else see Walter's answer. Otherwise, give us an example of what you'd like to see.
Ver también
Categorías
Más información sobre Histograms en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!