histogram2 configuration for colorbar and frenquency of cells

조회 수: 11 (최근 30일)
Felipe Aranda Delgado
Felipe Aranda Delgado 2019년 12월 4일
댓글: breathi 2019년 12월 9일
Hello, how can i do this in matlab? Put the frenquency and the colours as the colorbar.

채택된 답변

breathi
breathi 2019년 12월 5일
Hi,
try somethings like this when using histogram2
% Your data
data.X = randn(1,10000).*2+10;
data.Y = randn(1,10000)+6;
data.XEdges = 0:1:20;
data.YEdges = 0:12;
% Data counting number of occurencies
h=histogram2(data.X,data.Y ,data.XEdges, data.YEdges,'FaceColor','flat','EdgeColor','none');
% Modifying colormap with a bit of white at the end
cb = colorbar;
p=colormap('jet');
p(1:7,1:3) = [linspace(1,0,7)',linspace(1,0,7)',ones(7,1)];
colormap(p);
cb.Label.String = 'ColorBarString';
% Some labels
xlabel('X')
ylabel('Y')
zlabel('Enumeration of occurencies')
% create text labels from histcounts2
N = histcounts2(data.X,data.Y,data.XEdges,data.YEdges);
for xi=1:size(N,1)
for yi=1:size(N,2)
if N(xi,yi) > 0
text(mean(data.XEdges(xi:xi+1)), mean(data.YEdges(yi:yi+1)), num2str(N(xi,yi)), 'HorizontalAlignment', 'center', 'VerticalAlignment', 'middle');
end
end
end
h.FaceAlpha = .5;
% plot some curves at bottom
hold on,
plot(1:20,1:20)
% change view to 2D from below (to see texts & plots)
view(0,-90)
% reverse YDir
h.Parent.YDir = 'reverse';
Alternatively you could use other plot commands like bar3, ...
This should help you going where you want.
  댓글 수: 2
Felipe Aranda Delgado
Felipe Aranda Delgado 2019년 12월 6일
Hey! it works. But i want a blur effect on the edge of the bins . Do you know how to do that?
breathi
breathi 2019년 12월 9일
I'm not sure, you can try using something like this for a histogram2:
h.EdgeColor = 'k'
h.LineWidth = 4
h.EdgeAlpha = 0.1
But then the colors form the colorbar are obviously not applied as the borders. I could imagine that the colors are plotted by hand and the colorbar is just a dummy then.
But maybe someone else can help out here.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Data Distribution Plots에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by