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

21 次查看(过去 30 天)
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.

采纳的回答

Benjamin Kraus
Benjamin Kraus 2023-12-22
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.

更多回答(1 个)

Guilherme
Guilherme 2023-1-12
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 个评论
ct8
ct8 2023-1-13
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()

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Data Distribution Plots 的更多信息

产品


版本

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by