2015-11-18 2 views
0

Я использую панель инструментов отображения в Matlab и задаю два вопроса.alter northarrow and ruler in mapping toolbox

В следующем:

worldmap([48 56],[12 27]); 
land = shaperead('landareas','UseGeocoords',true); 
geoshow(land,'facecolor',[0.8 0.8 0.8]); 

% add ruler 
scaleruler('units','km'); 
setm(handlem('scaleruler'), ... 
    'XLoc',-4.8e5,'YLoc',5.4e6,... 
    'MajorTick',0:100:400,... 
    'FontName','Times New Roman',... 
    'FontSize',10,'FontWeight','light',... 
    'LineWidth',2,... 
    'MajorTickLength',20,'ruler','patches','TickMode','manual'); 
northarrow('latitude', 54.5, 'longitude', 24.5,'scaleratio', .17); 

(1) Как можно удалить «N» с севера стрелкой, и (2) как я могу сделать правитель начать at'0' , он в настоящее время начинается в 10, что кажется немного странным для меня. enter image description here

Я просмотрел документацию, но не могу найти упоминания об этом.

+0

Правитель не начинается в 10 км, но в 0. 0 просто не печатается; 10 принадлежит сразу после черной полосы. Если вы планируете использовать хорошие карты, подумайте об использовании [Generic Mapping Tools] (http://gmt.soest.hawaii.edu/). Он бесплатный и предназначен для создания таких графиков, но с довольно красивыми аннотациями и цветами. – Adriaan

ответ

2

1-

Чтобы линейка начать с 0 просто изменить строку следующим образом:

setm(handlem('scaleruler'),'XLoc',-4.8e5,'YLoc',5.4e6,'MajorTick',0:100:400,'MinorTick',0,'FontName','Times New Roman','FontSize',10,'FontWeight','light',... 
    'LineWidth',2,'MajorTickLength',20,'ruler','patches','TickMode','manual'); 

2-

рубить на "снять" N символ выглядит следующим образом:

h = handlem('NorthArrow'); 
set(h,'FaceColor',[0 0 0],'EdgeColor',[0.8 0.8 0.8]) 

Это фактически делает цвет похожим на фоновый цвет.

Окончательный код и результат следующим образом:

worldmap([48 56],[12 27]); 
land = shaperead('landareas','UseGeocoords',true); 
geoshow(land,'facecolor',[0.8 0.8 0.8]); 
northarrow('latitude', 54.5, 'longitude', 24.5,'scaleratio', .17); 
h = handlem('NorthArrow'); 
set(h,'FaceColor',[0 0 0],'EdgeColor',[0.8 0.8 0.8]) 

scaleruler('units','km'); 
setm(handlem('scaleruler'),'XLoc',-4.8e5,'YLoc',5.4e6,'MajorTick',0:100:400,'MinorTick',0,'FontName','Times New Roman','FontSize',10,'FontWeight','light',... 
    'LineWidth',2,'MajorTickLength',20,'ruler','patches','TickMode','manual'); 

enter image description here