How to customize Colorbar in heatmap?

32 ビュー (過去 30 日間)
heejin choi
heejin choi 2024 年 1 月 16 日
コメント済み: heejin choi 2024 年 1 月 16 日
I want to change the colorbar ticks and labels.
But in updated heatmap function, the colorbar is not output object of heatmap function.
How can I change the colorbar ticks and label?
In attached figure, I want to change colorbar that has ticks only 0 and 1 and each label will be "No" and "Yes", respectively.
mon_label = ["Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec"];
figure(555)
h = heatmap(scedata,'CellLabelColor','none');
Ax = gca;
Ax.XDisplayLabels = mon_label;

採用された回答

Angelo Yeo
Angelo Yeo 2024 年 1 月 16 日
Try something like this. Using struct can reveal hidden properties like "Colorbar".
cdata = [1, 0, 0; 0, 1, 0; 0, 0, 1];
h = heatmap(cdata);
colormap([h.Colormap(1,:); h.Colormap(end,:)]);
hs = struct(h);
Warning: Calling STRUCT on an object prevents the object from hiding its implementation details and should thus be avoided. Use DISP or DISPLAY to see the visible public details of an object. See 'help struct' for more information.
hs.Colorbar.Ticks = [0.25, 0.75];
hs.Colorbar.TickLabels = {'False', 'True'};
  1 件のコメント
heejin choi
heejin choi 2024 年 1 月 16 日
Thank you very much!! You solve my problem! I don't know about struct function.
Thank you for your kindly helps. :)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeData Distribution Plots についてさらに検索

製品


リリース

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by