How to plot square diagram
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Dear member, how to plot this figure in Matlab. Many thanks
Kind regards
0 commentaires
Réponse acceptée
Adam Danz
le 2 Oct 2019
Modifié(e) : Adam Danz
le 2 Oct 2019
Demo:
data = diag(randi(20,1,20)+40);
heatmap(data)
xlabel('predicted')
ylabel('actual')
%Create colormap that looks like the image in the question
cm = [linspace(1,0,100)', linspace(1,0,100)', linspace(.875,1,100)']; %from [1 1 .875] to [0 0 1]
colormap(cm)
% or just use
% colormap(flipud(colormap('parula')))
2 commentaires
Adam Danz
le 2 Oct 2019
Glad I could help. I just updated the answer to include a colormap that approximates the colormapping in the image in your question.
Plus de réponses (2)
Tran Hoa
le 2 Oct 2019
6 commentaires
Adam Danz
le 2 Oct 2019
I see. sprintfc() is an undocumented built-in matlab function. Apparently you have another file with the same name and that file is a script.
That line is just creating fake labels, anyway. You probably already have your own labels. In any case, you can replace that line with this.
labels = strsplit(sprintf('%c ','a':'t'));
labels(end) = []
Tran Hoa
le 2 Oct 2019
2 commentaires
Adam Danz
le 3 Oct 2019
@ Tran Hoa, this thread may become a bit difficult to follow when there are several "answers" posted that are not answer, but discussion. Please use the "comment" section under a particular answer or under the question if you'd like to continue discussion. The "answer" section is for proposing answer to the question stated at the top of the page.
You can't edit the text displayed in a heatmap. Here's a link to some alternatives:
Voir également
Catégories
En savoir plus sur Colormaps dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!