2013-03-29 188 views
0

我是MATLAB /編程的新手,所以請原諒我的noobness。無論如何,我試圖創建一個數據的全球分佈的3色圖。我最終希望這個圖形成爲包含2種不同類型圖的圖的最高部分。我的問題是,在設置圖例的位置後,空間圖和圖例中的顏色默認爲黑色。我認爲問題在於傳說的編碼,因爲當我刪除它時,情節變得很好。MATLAB繪圖設置圖例後顏色丟失

總之,這裏的代碼:

tm = zeros(3,group(1).ny); 
hl = zeros(3,1); 

proxycolor = zeros(3,3); 

icon{1,1}= [1 0 0]; icon{1,2}= '^'; icon{1,3} = 'Raw Data'; 
icon{2,1}= [1 1 0]; icon{2,2}= 'v'; icon{2,3} = 'Quality Controlled Data'; 
icon{3,1}= [0 1 0]; icon{3,2}= '*'; icon{3,3} = 'Screened Data'; 


fig('Data Availability'),clf 
subplot(3,1,1:2) 
m_proj('Robinson','clong',180); 
m_grid('xtick',[0:60:360],'tickdir','out','ytick',[-90:30:90], 'color',dkgr, 'fontsize',8,'fontname','Times New Roman'); 

m_coast('color','k'); 


for j = 1:3 
    group(j).lon(group(j).lon<0) = group(j).lon(group(j).lon<0) + 360; 
    tm(j,:) = group(1).tm; 
end 

for j = 1:3 
    proxycolor(j,:) = icon{j,1}; 
    hl(j)=m_line(group(j).lon,group(j).lat,'color',icon{j,1},'marker',icon{j,2},'MarkerFaceColor',icon{j,1},'MarkerSize',7,'LineStyle','none'); 
end 


%The problem lies below here somewhere 
[LEGH,OBJH,OUTH,OUTM]=legend(hl(:),icon{:,3});pause; 
set(LEGH,'FontName','Times','FontSize',10); 
set(OUTH,'Color','k','MarkerFaceColor','k','Markersize',8); 
legend boxoff 

回答

0

根據該文件,以legendOUTH,其顏色要設置爲黑色,含有的句柄線和補丁中的情節,即

set(OUTH,'Color','k','MarkerFaceColor','k','Markersize',8); 

正在導致您的問題,應該可能會被刪除或更改。