I think the problem is about just saving the data. I didnt use the saveas function and it was much faster.
how to save a plot ?
3 ビュー (過去 30 日間)
古いコメントを表示
I have two large data sets. Usually it takes a lot of time to save a plot on hard drive. I wonder how I can save a plot as jpeg file in a quick way. Usually it takes a lot of time to save a plot on hard drive. I apperciate your help.
saveas(gcf,'C:\plot.jpg')
delete(gcf)
5 件のコメント
Walter Roberson
2011 年 6 月 19 日
save() is the counterpart of load()
http://www.mathworks.com/help/techdoc/ref/save.html
It stores the data instead of the image, so whether it is useful to you depends on what you need to do afterwards.
回答 (2 件)
Jan
2011 年 6 月 19 日
I guess that it is not the saving, but the drawing of the plot, which consumes the most time. "delete(gcf)" means, that you create a new figure for each plot. This is much slower than using the same figure and only update the axes object, or even better: Keep the axes also and update just the children.
So please insert a DRAWNOW before the method for sving and use the PROFILEr to find the most time consuming lines.
6 件のコメント
Walter Roberson
2011 年 6 月 19 日
So effectively the bulk of the time is being used in the built-in function toolbox/matlab/graphics/hardcopy which is being called by the plot renderer.
Walter Roberson
2011 年 6 月 19 日
3 件のコメント
Walter Roberson
2011 年 6 月 19 日
Hmm... what kind of scene elements do you use? If you do not have transparency, then _possibly_ changing the renderer property of the figure or the drawmode property of axes could help. Unfortunately I do not know how rendering is done for saving images, so these things might not make any difference.
参考
カテゴリ
Help Center および File Exchange で Printing and Saving についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!