Plotting hitmap with different box size
이전 댓글 표시
Hello,
I have a 64x9 matrix and I want to plot a heatmap with different box sizes. Figure as below.

Can someone please help me with this? Added sample data file
댓글 수: 5
jonas
2018년 7월 27일
What do the size signify?
Mudasser Seraj
2018년 7월 27일
Walter Roberson
2018년 7월 27일
Neither heatmap() or HeatMap() (from Bioinformatics toolbox) can do this for you.
You might want to look in the File Exchange to see if you can find some code to adapt.
Mudasser Seraj
2018년 7월 27일
편집: Mudasser Seraj
2018년 7월 27일
jonas
2018년 7월 27일
You can do this quite easily with scatter3. I'll give it a try.
채택된 답변
추가 답변 (1개)
Here's an alternative using scatter3.
%%Some data
[X,Y]=meshgrid(1:10,1:10);
Z=rand(10,10).*2-1;
figure;hold on
%%Scale for color
zc=(Z+1).*100;
cn = ceil(max(zc(:)));
cm = colormap(parula(cn));
%%Scale Z for box size
zb=abs(Z(:).*850);
%%plot and fix visuals
h=scatter3(X(:), Y(:), Z(:), zb,cm(ceil(zc),:),'s','filled')
colorbar
caxis([-1 1])
set(h,'markeredgecolor','k')
set(gca,'xtick',1:10,'ytick',1:10)
box on
axis([0,11,0,11])
view(2)
grid on
See attachment
카테고리
도움말 센터 및 File Exchange에서 Data Distribution Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
