How to add top and bottom x-axes labels to a heatmap?

21 vues (au cours des 30 derniers jours)
ct8
ct8 le 12 Jan 2023
I have a heatmap to which I want to add two x-axes, top and bottom, representing two different quantities. Attached are the .fig I got, and the source .mat.

Réponse acceptée

Benjamin Kraus
Benjamin Kraus le 22 Déc 2023
My answer from November 8, 2023 shows how to leverage tiledlayout to create an axes that sits under the heatmap and can be used to add additional labels. This same technique can be used to add duplicate labels on the top and bottom of the heatmap. It has working example code you can start with.

Plus de réponses (1)

Guilherme
Guilherme le 12 Jan 2023
It shows how to add two axes to a single plot. Then, you'd need to use xlabel and reference the Xaxis that you want to change as the target. You'd need something like that:
t = tiledlayout(1,1);
target_bottom = axes(t);
%%
% Plot Bottom
%%
target_top = axes(t);
target_top.XAxisLocation = 'top';
%%
% Plot Top
%%
xlabel(target_bottom,'Bottom Axis')
xlabel(target_top,'Top Axis')
  1 commentaire
ct8
ct8 le 13 Jan 2023
I have tried this, but it is not working for my heat map. Essentially I want to know how to define the titled layout in my code which generates a heatmap.
figure()
imagesc(x,z,y')
% reproduce heatmap's colormap
n=256;
cmap = [linspace(.9,0,n)', linspace(.9447,.447,n)', linspace(.9741,.741,n)'];
colormap(cmap);
axis xy
colorbar()

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Distribution Plots dans Help Center et File Exchange

Produits


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by