Why export_fig won't work if code is run automatically?

조회 수: 1 (최근 30일)
Marian
Marian 2014년 1월 10일
댓글: Sean de Wolski 2014년 1월 13일
Hi, I've created a script that will update graphs every hour and save them as .jpgs using export_fig. When I manually run the script, it all goes smoothly, but when I use a c-shell to run MATLAB, the .jpg created is scrunched with no plot (only the title and axis labels are there). My .csh looks like this:
#! /bin/csh
matlab -nodisplay -nodesktop -r "run /home/mmateling/realtime/capebird.m"
So the script runs, with no errors, but there must be something wrong with the way my .csh script runs and the export_fig code. I am by no means a unix or matlab expert, so any help would be greatly appreciated!

채택된 답변

Image Analyst
Image Analyst 2014년 1월 10일
I think export_fig grabs pixels from the display memory, though I could be wrong. I never would have tried to run it with the nodisplay option so that nothing is displayed. Is anything at all being saved, like whatever happens to be on your screen at the moment?
  댓글 수: 2
Marian
Marian 2014년 1월 13일
Sorry, I should've included my code!
set(gcf, 'Color', 'white'); % white bckgr
saveas(gcf,'birdmet.jpg')
drawnow
export_fig(gcf, ... % figure handle
'birdmet',... % name of output file without extension
'-painters', ... % renderer
'-jpg', ... % file format
'-r100'); % resolution in dpi
I used a multitude of different websites to help me get to this point. And I tried taking out nodisplay and it still doesn't work. When I run my code as is, the .jpg is created exactly as I would expect, and is saved into my directory using export_fig
Marian
Marian 2014년 1월 13일
Ok - I've got it working now! Thank you!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Sean de Wolski
Sean de Wolski 2014년 1월 10일
편집: Sean de Wolski 2014년 1월 10일
Did you drawnow() before exporting/printing?
  댓글 수: 2
Marian
Marian 2014년 1월 13일
This must've been the main problem! I wish I could accept both answers - I used
drawnow update expose
and took out the code nodisplay (as Image Analyst said to do, below), and it is finally working. Thank you!
Sean de Wolski
Sean de Wolski 2014년 1월 13일
Well you could vote for 'em both :)

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Interactive Control and Callbacks에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by