Сначала я думал, что вы что-то делаете неправильно, но потом я вспомнил, что это была проблема, которая чертовски беспокоила меня год или около того назад. Я не мог придумать способ «исправить» это поведение, и из того, что я исследовал, это, скорее всего, ошибка, и у некоторых других тоже была эта проблема, и нет известного решения. Конечно, я могу ошибаться в последней части, и могут быть какие-то решения, которые вышли с тех пор, как я их искал.
В любом случае, я мог обойти эту проблему, используя pcolor
с shading flat
вместо imagesc
. При экспорте в формат eps
изображение сохраняется правильно. Пример:
pcolor(rand(20));
shading flat
print('-depsc','figure.eps')
ПРИМЕЧАНИЕ: Вы могли бы увидеть появление тонких, слабых белых линий вдоль антидиагоналей каждого маленького квадрата (зависит от ОС и средства просмотра). Это края графических примитивов, которые используются для визуализации изображения. Однако это не недостаток в экспорте MATLAB, а скорее ошибка рендеринга в вашей программе просмотра EPS / PDF. Например, с настройками по умолчанию в Preview на моем Mac эти строки отображаются, тогда как с настройками по умолчанию в Adobe Reader 9.4 они не отображаются.