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!