Problems with legend using imagesc
6 vues (au cours des 30 derniers jours)
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]
0 commentaires
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');
6 commentaires
Voir également
Catégories
En savoir plus sur Legend dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!