我有5个不同的值,我想创建一个传奇? 这些是连续的数据,我需要小的彩色方块! How to add legend in imagesc plot in matlab像这样的东西但是用方块,我试着用“矩形”代替“线”,但这显然不是诀窍!
谢谢
答案 0 :(得分:2)
我刚刚使用了您的linked example code并对其进行了一些修改:
N=4; % # of data types, hence legend entries
Data = randi(N,30,30); % generate fake data
imagesc(Data) % image it
cmap = jet(N); % assigen colormap
colormap(cmap)
hold on
markerColor = mat2cell(cmap,ones(1,N),3);
L = plot(ones(N), 'LineStyle','none','marker','s','visible','off');
set(L,{'MarkerFaceColor'},markerColor,{'MarkerEdgeColor'},markerColor);
legend('A','B','C','D')
诀窍是使用标记而不是线本身。
它返回: