Python call matlab function 'plot', The figure disappeared in few seconds.
Show older comments
When I use python call the matlab funtion plot, the figure only exists few seconds, then it colsed automatically. Why does have this phenomenon occur? How could I change or add something? Thank you very much.
AddTset.m
function c = AddTest(a,b)
c = a + b;
figure(1)
plot(a,c,'DisplayName','test');
%pause(30);
end
pyCallMat.py
import matlab.engine
if __name__ == '__main__':
eng = matlab.engine.start_matlab()
a = eng.AddTest(1.0,2.0)
print(a)
b = eng.sqrt(4.)
eng.figure(3.0)
eng.plot(a, b, nargout=0)
print(b)
4 Comments
Mohammad Sami
on 24 Mar 2020
I presume this maybe because the variable eng get cleared after your function is finished executing. this might perhaps close the matlab engine.
Tianya Duan
on 24 Mar 2020
Tianya Duan
on 26 Mar 2020
Villa Xue
on 11 Mar 2022
Thank you a lot, It works when use: input("Press Enter to continue...") in python
Accepted Answer
More Answers (0)
Categories
Find more on Call MATLAB from Python in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!