Display values on heatmap plot - they disappear as the plot shrinks

47 次查看(过去 30 天)
I am trying to make a heatmap where the values of the cells are displayed as well, not only the color. Now this basically works - however, as soon as I shrink the figure, the numbers disappear and I am left with colourful but empty cells. I guess this has to do with the text size, but how can I adapt that one?
This is the example code (just a simple heat map):
heatmap(dfd_ptp, 'Colormap', jet, 'ColorbarVisible', 'on', 'XLabel', 'Time', 'YLabel', monthstr)

采纳的回答

Benjamin Kraus
Benjamin Kraus 2018-2-23
The font size of the cell labels on the heatmap automatically scale so that they don't overrun the individual cells (and so the labels don't overlap one another). They will automatically turn off when the font size gets too small to read. The threshold at which the cell labels turn off is hard-coded, there is no way to modify that setting. In addition, the cell labels will all turn off as soon as any of the labels are too big to fit (i.e. they all turn off at the same time, not one-by-one).
If the labels did not turn off, at some point they would just become black dots in the center of the cells, which would obscure the colors in the cells. I know that setting the FontSize will make the axes labels smaller, but out of curiosity, what font size would you use for your cell labels that fit inside the cell, but is large enough to read?
Also, if you could control the font size of the cells, which would you prefer:
  • Be able to specify the cell label font size independent of the axes label font size
  • Be able to adjust the minimum cell label font size before the labels are considered "too small to read" and are are shut off automatically?
There is one potential solution, depending on your particular data: You may be able to modify the CellLabelFormat to generate shorter cell labels.
  1 个评论
Stefanie Aebi
Stefanie Aebi 2018-2-26
Hi and thank you for your reply. I'm not sure whether I remember correctly, but I think I put 5pt or 6pt and then I still got cell Labels. However, that didn't look very nice on the axes... My favourite Option would thus be the first one: specify the cell Label font size Independent of the axes Label font size. I guess that would resolve the Problem, even though I will get small cell labels

请先登录,再进行评论。

更多回答(2 个)

Walter Roberson
Walter Roberson 2018-2-1
  2 个评论
Stefanie Aebi
Stefanie Aebi 2018-2-1
编辑:Stefanie Aebi 2018-2-1
Thanks for your Suggestion! That already solves part of the Problem :-) However, if I adapt FontSize, the axis Labels shrink as well (because FontSize is specified for all text), which is something I don't really want. Is there a way to adapt only the fontsize of the cell labels?

请先登录,再进行评论。


Farid Samara
Farid Samara 2020-10-23
I am trying to use heatmap to plots tables in matlab. I really like the idea of being able to visualize the numbers. But it is also very important to me to show the numbers. Is is possible to should the cell numbers vertically? That could also make a huge difference?
Is there another function I could use to visualize tables?
Thanks
Farid

类别

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