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