Problems with legend using imagesc
Afficher commentaires plus anciens
I have the following code, I have adapted it from another code and I think that is where I am getting stuck.
basically I have a 35x43 matrix of numbers 1-6 and NaNs. I want to plot is as a map using imagesc with different colours for each number (1,2,3,4,5,6). I have attached the data, and my code is below.
Thanks in advance for any help
figure(6)
subplot(1,2,1)
imagesc(lut)
title('Distribution of Different Land Use Types in Australia')
ylabel('Longitude')
xlabel('Latitude')
caxis([0, 6])
myColorMap = jet(6);
myColorMap(1,:) = 1;
colormap(myColorMap);
M = jet(6);
hold on
L = line(ones(6),ones(6));
set(L,{'color'},mat2cell(M,ones(1,6),3))
[legh,objh,outh,outm] = legend('First','Second','Location','Southeast');
set(objh,'linewidth',200);
legend(1,'Forest',2,'Shrubland',3,'Savanna',4,'Grassland',5,'Agricultural',6,'Barron');
grid on
ax = gca
ax.GridAlpha = .2
ax.XTick = [5 10 15 20 25 30 35 40];
ax.YTick = [5 10 15 20 25 30];
ax.XTickLabel = {'118^{o}E','123^{o}E','128^{o}E', '133^{o}E', '138^{o}E', '143^{o}E','148^{o}E', '153^{o}E'};
ax.YTickLabel = {'13^{o}S','18^{o}S','23^{o}S','28^{o}S','33^{o}S','38^{o}S'};
ax.TickLength =[0.0 0.0]
Réponses (1)
KSSV
le 4 Oct 2016
Replace
legend(1,'Forest',2,'Shrubland',3,'Savanna',4,'Grassland',5,'Agricultural',6,'Barron');
with
legend('Forest' ,'Shrubland', 'Savanna','Grassland' , 'Agricultural' ,'Barron');
Catégories
En savoir plus sur Legend dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!