1
我打電話從MATLAB python腳本。蟒腳本需要3個數組作爲輸入參數:調用Matlab的從Python腳本與參數
import sys
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.set_aspect('equal')
X = np.array(float(sys.argv[1]), dtype =np. float32)
Y = np.array(float(sys.argv[2]), dtype =np. float32)
Z = np.array(float(sys.argv[3]), dtype =np. float32)
scat = ax.scatter(X, Y, Z)
我請從MATLAB的Python腳本這樣的:
!"MYPATH\python.exe" test3.py dX dY dZ
在Matlab中,dX
,dY
和dZ
都是1x500陣列型。 不過,我得到以下錯誤:
ValueError: could not convert string to float: dX
它看起來像python腳本調用dX
陣列不評估,並採取論證爲字符串。我該如何糾正?
看起來像一個可行的解決方案,但是我得到以下錯誤: ???錯誤使用==>系統 輸入參數太多。 –
如果我嘗試'系統([ ' 「mypath中\ python.exe」', 'test3.py'],文件名);',我得到以下錯誤:使用 '錯誤==>系統 無法識別的選項:tempname。 txt' –
我已更改代碼以正確構建命令。對不起,只是另一片Matlab的不一致。 – chthonicdaemon