How do I run Matlab from Python, but save figures to a file?
7 ビュー (過去 30 日間)
古いコメントを表示
I am successfully running Matlab from Python. The Matlab code I have displays 2 figures. Upon running Python, would rather those figures go to a file. Is there a switch, or some such option to get that to happen? Rather not rewrite Matlab code with some sort of Python specific switch.
Thanks, Tom
2 件のコメント
Image Analyst
2015 年 10 月 17 日
Why would you need a Python specific switch? Why not just save the figures using export_fig() directly from MATLAB?
回答 (2 件)
Bo Li
2015 年 10 月 19 日
There is no such flag. Python Engine allows you to have full control over MATLAB from Python. You can simply save a figure like following example shows:
>>>eng.plot(matlab.double([1,2,3,4])) %create a plot
>>>eng.savefig("foo.fig",nargout=0) %save current figure to "foo.fig"
>>>eng.close() %close current figure
3 件のコメント
Bo Li
2015 年 10 月 19 日
Yes, I believe it works for Linux and Mac:
Start up options can be also used in Python Engine. For example, you can start MATLAB with "-nodisplay" by:
>>> eng = matlab.engine.start_matlab("-nodisplay")
Bo Li
2015 年 10 月 19 日
You probably can try the start up option "-noFigureWindows" if the purpose is to hide the figure window:
This works on all platforms.
参考
カテゴリ
Help Center および File Exchange で Python Package Integration についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!