Я пытаюсь построить две карты бок о бок, используя subplot
. Однако вместо того, чтобы отображать графики рядом друг с другом, я просто получаю одну карту (вторую, которую я пытался построить), покрывающую всю страницу. Нравится:
Я хочу, чтобы верхний график представлял собой одну карту, которая будет выглядеть так же, как изображение выше, но с другой шкалой цвета, заголовком и т. Д. И затем нижний график. Это изображение также обрезает цветовую полосу, и оси не должны быть помечены таким образом. Вот пример того, как я бы хотел, чтобы он выглядел на основе того, что я сделал ранее для небольшой территории США.
Я бы хотел, чтобы они на самом деле были рядом, поэтому я отредактировал код, чтобы сделать это (я пробовал вверх и вниз, чтобы увидеть, решит ли это проблему)
Вот код, который я использовал. Данные, которые я загружаю, можно найти здесь: https://www.dropbox.com/sh/k55y0g2kv9w7gv8/AADBBE9Qc1M-C7YiRL3SnC4ja
%% Load data needed for mapping
load map_PM25.mat
load map_O3.mat
nFrames = 6240;
for k = 94:nFrames
subplot(1,2,1) % PM2.5
% Map of conterminous US
ax = figure(1);
set(ax, 'visible', 'off', 'units','normalized','outerposition',[0 0 1 1]); % Make window that shows up full sized, which makes saved figure clearer
ax = usamap('conus');
states = shaperead('usastatelo', 'UseGeoCoords', true,...
'Selector',...
{@(name) ~any(strcmp(name,{'Alaska','Hawaii'})), 'Name'});
faceColors = makesymbolspec('Polygon',...
{'INDEX', [1 numel(states)], 'FaceColor', 'none'}); % NOTE - colors are random
geoshow(ax, states, 'DisplayType', 'polygon', ...
'SymbolSpec', faceColors)
framem off; gridm off; mlabel off; plabel off
hold on
% Plot data
scatterm(ax,str2double(Lat_PM25{k})', str2double(Lon_PM25{k})', 40, str2double(data_PM25{k})', 'filled');
hold on
% Colorbar
caxis([5 30]);
h = colorbar;
ylabel(h,'ug/m3');
% Title
title(['PM2.5 24-hr Concentration ', datestr(cell2mat(date_PM25(k)), 'mmm dd yyyy')]);
subplot(1,2,2) % O3
% Map of conterminous US
ax = figure(1);
set(ax, 'visible', 'on', 'units','normalized','outerposition',[0 0 1 1]); % Make window that shows up full sized, which makes saved figure clearer
ax = usamap('conus');
states = shaperead('usastatelo', 'UseGeoCoords', true,...
'Selector',...
{@(name) ~any(strcmp(name,{'Alaska','Hawaii'})), 'Name'});
faceColors = makesymbolspec('Polygon',...
{'INDEX', [1 numel(states)], 'FaceColor', 'none'}); % NOTE - colors are random
geoshow(ax, states, 'DisplayType', 'polygon', ...
'SymbolSpec', faceColors)
framem off; gridm off; mlabel off; plabel off
hold on
% Plot data
scatterm(ax,str2double(Lat_O3{k})', str2double(Lon_O3{k})', 40, str2double(data_O3{k})'*1000, 'filled'); % Plot a dot at each Lat and Lon
hold on
% Colorbar
caxis([10 90]);
h = colorbar;
ylabel(h,'ppb');
% Title
title(['O3 MDA8 Concentration ', datestr(cell2mat(date_O3(k)), 'mmm dd yyyy')]); % Title changes every daytitle(str);
% Capture the frame
mov(k) = getframe(gcf); % Makes figure window pop up
% Save as jpg
eval(['print -djpeg map_US_' datestr(cell2mat(date_PM25(k)),'yyyy_mm_dd') '_PM25_24hr_O3_MDA8.jpg']);
clf
end
close(gcf)
usamap('conus')
и что возвращает? - person shimizu   schedule 23.05.2014