Странное поведение в Matlab при экспорте рисунка в eps, pdf - PullRequest
6 голосов
/ 06 августа 2010

Когда я делаю фигуру в Matlab с легендой и прямоугольником , который касается оси y (странно, я знаю) при экспорте фигуры в eps (или pdf), я заметил, что Прямоугольник получает стиль линии последней нарисованной линии (а не того, с которой был нарисован прямоугольник)

Такое поведение также имеет место для прямоугольников, нарисованных после того, который касается оси ...

Этого не происходит, если прямоугольник нарисован до , легенда создана ....

Само собой разумеется, мне потребовалось полдня, чтобы создать минимальный пример:

clf
L=plot(X,sin(X),'--');

legend(L,'sin(x)')

rectangle('position',[0.001,.1,.7,.7])
rectangle('position',[0,.5,.6,.7])
rectangle('position',[0.001,.3,.5,.7])

%legend(L,'sin(x)')

На экране 3 прямоугольника имеют сплошные линии, как и должно быть. но как только они экспортируются, результат имеет последние два с пунктирными линиями (как sin(x)). Если команда легенды выполняется позже (как в закомментированной строке), все работает как надо ....

Это функция или ошибка?

1 Ответ

4 голосов
/ 06 августа 2010

Это не функция.Я отправляю это на разработку.

Вы нашли обходной путь, который работает с минимальной гимнастикой кода.Я бы задокументировал это в вашем коде, чтобы кто-то не изменил его по незнанию и пошел дальше.

Если вы открыты для других форматов вывода, обратите внимание, что это не проблема с форматами, которые используют выходной фильтр MATLAB.1005 *

http://www.mathworks.com/access/helpdesk/help/techdoc/ref/print.html

(раздел Файлы графического формата, правый столбец в таблице)

-Doug, расширенная поддержка в MathWorks, связанная с графическими проблемами.

...