histogram2 vs pcolor: on making the coloring of the former one smooth
Show older comments
When making a 2d graph using pcolor() or a surface plot with surf(), MATLAB evaluates the function on a grid and gives each piece of this grid a corresponding color. Adding
shading interp
makes the transitions between colors smooth, so that the grid is no longer visible.
It seems though, that this option does not work for a histogram2(), even though superficially such an object looks very similar.
Is there a way to make the output graphics object histogram2() smooth, with or without converting it into an ordinary figure?
5 Comments
Jan
on 4 Jul 2017
The output of histogram2 is an "ordinary" figure. Are there sub-ordinary figures?
A histogram is wanted to have visible edges to distinguish the bars. What do you want to achieve exactly? Can you post a screenshot and explain the required differences? What exactly should look "smooth"?
Jan
on 5 Jul 2017
If the lower data have been calculated inside the boxes, drawing a smooth image would be nice, but misleading. Such an anti-aliasing would pretend a solution obtained in a much higher resolution and in consquence it is not scientifically correct.
You could use the output of histogram2 and create the diagram by you own with pcolor instead of teh bars.
Floris Jansen
on 18 Feb 2020
>> Do you mean there is a class property of histogram2 containing the Z-values?
Yes! The return value of histogram2 contains the values of the bins:
>> h = histogram2(1:5, 2:6);
>> h.Values
ans =
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
You can use these values with your favorite plotting tools to get exactly what you need.
Answers (0)
Categories
Find more on Data Distribution Plots in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
