Python call matlab function 'plot', The figure disappeared in few seconds.
古いコメントを表示
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 件のコメント
Mohammad Sami
2020 年 3 月 24 日
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
2020 年 3 月 24 日
Tianya Duan
2020 年 3 月 26 日
Villa Xue
2022 年 3 月 11 日
Thank you a lot, It works when use: input("Press Enter to continue...") in python
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Call MATLAB from Python についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!