Plotting hitmap with different box size
Afficher commentaires plus anciens
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 commentaires
jonas
le 27 Juil 2018
What do the size signify?
Mudasser Seraj
le 27 Juil 2018
Walter Roberson
le 27 Juil 2018
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
le 27 Juil 2018
Modifié(e) : Mudasser Seraj
le 27 Juil 2018
jonas
le 27 Juil 2018
You can do this quite easily with scatter3. I'll give it a try.
Réponse acceptée
Plus de réponses (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
1 commentaire
Mudasser Seraj
le 30 Juil 2018
Catégories
En savoir plus sur Data Distribution Plots dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
