Невидимые и невидимые фигуры
Следующий код создает график и таблицу на невидимой фигуре.
f = figure('Visible','off')
plot(rand(10),rand(10))
t = uitable('Parent',f,'Data',rand(10,10))
saveas(f,'file.jpg','jpg')
Единственная проблема заключается в том, что таблица не будет напечатана / сохранена в файл, я пытался использовать print
а также проверить это. Также не порядок, в котором я положил plot
а также uitable
иметь значение.
Есть ли обходной путь для этого? Причина, по которой я хочу, чтобы это работало, заключается в том, что я хотел бы сохранить сотни файлов + таблица рядом с ним в файлах и не хочу рисовать их, как это, кажется, занимает некоторое время, хотя это всего лишь построение графиков.
Следующий код покажет рисунок, и после этого таблица волшебным образом появится и на отпечатке.
set(f,'Visible','on')
Пока что это всегда воспроизводимо, у меня R2011a. Спасибо:)
2 ответа
Это известная ошибка: вопрос, который я задал давным-давно на форумах Matlab Central
В документации функции PRINT (которую вызывает SAVEAS) указано, что:
Если вы печатаете или экспортируете в режиме нодисплея, ни один из uicontrols на рисунке не будет виден. Если вы запустите код, который добавляет uicontrols к фигуре, когда фигура невидима, элементы управления не будут печататься, пока фигура не станет видимой.
Так что на самом деле это не ошибка, а скорее ограничение...