MATLAB - Ось равна и тем временем растягивается до заполнения?
По умолчанию, stretch-to-fill
включен Так
pixels = ones(100,100)
image(pixels);
colormap([0 0 0; 1 1 1]);
производит
Заставляя оси иметь одинаковый масштаб, это
pixels = ones(100,100)
image(pixels);
colormap([0 0 0; 1 1 1]);
axis equal;
производит
Очевидно, что stretch-to-fill
отменяется axis equal
, Что нужно сделать, чтобы они сосуществовали?
2 ответа
Решение
Я думаю, что вы ищете этот звонок:
figure(1)
image(pixels)
colormap(clr)
axis image % <-- this call
Вот таблица свойств осей, управляемых различными axis
режимы:
Вы также можете сделать что-то подобное, используя imshow
функция, которая действует как обертка более высокого уровня для image
/ imagesc
:
figure(2)
imshow(pixels, clr, 'InitialMag','fit', 'Border','loose')
axis on
Проблема в том, что ваши пределы оси отражают старый размер. Может быть, есть общий способ ее решения, но установка ограничений вручную решает это:
xlim([1,100]);ylim([1,100])