How to click into the heatmap created inside a UI panel?

4 views (last 30 days)
I’m working on building an interactive Heatmap in Matlab UI. I've added a UI Panel to the interface and populated the heatmap within the panel. Now that I know how to get the row and column upon clicking the Heatmap cell, the issue now is I’m not able to actually click into the heatmap within the UI Panel. I tried using the “WindowButtonDownFcn”, but was only able to click into any blank area within the UI Panel. When I click on the heatmap in the UI panel, there is no response at all.
May I know how I could click into the heatmap created inside the UI Panel? Thanks!
  3 Comments
Yiling
Yiling on 31 Jan 2025
Hi Adam, what you sensed is correct! I've actually resolved this by applying a windowbuttondownfcn on the UI figure so that I can click on the heatmap within a ui panel on the ui figure. My current issue is, when the heatmap becomes bigger and bigger, it just scales itself to fit into the panel. What I want is that the heatmap won't change its column and row width, so when there are more rows, the panel will have a scoller that I can drag down. Now it looks like the heatmap label is sticking its position to the bottom and left edge of the ui panel.
Is there a solution you can think about? Does imagesc (which create image instead of a plot) better help with this?
Adam Danz
Adam Danz on 31 Jan 2025
imagesc is a common alternative to heatmap. However, imagesc lacks many features in heatmap such as interactively sorting columns and labels, categorical zoom that snaps to edges, and the automatic labeling of cells.
Here's a demo on using imagesc to imitate heatmap

Sign in to comment.

Answers (0)

Categories

Find more on Data Distribution Plots in Help Center and File Exchange

Products


Release

R2024a

Community Treasure Hunt

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

Start Hunting!