2012-01-19 8 views
1

GUIにデータをインポートして、handlesに保存しようとしています。 .matファイルには、すべてのデータを含むlogという単一の構造体が含まれています。私はガイドを使用して、ボタンを作り、次のコードを追加しました:MatlabのGUIのuigetfile

function loadMatFileButton_Callback(hObject, eventdata, handles) 
[FileName,PathName] = uigetfile('*.mat'); 
loadDataName = fullfile(PathName,FileName); 
load(loadDataName); % gives log struct 

handles.log = log; 

をしかし、実行するとき、私はこのエラーを取得する:

??? Error using ==> log 
Not enough input arguments. 

Error in ==> VisualizeData>loadMatFileButton_Callback at 160 
handles.log = log; 

それは本当に奇妙です。私はloadコマンドの後にブレークポイントを置いてデバッグしようとしました。コンソールに手動でhandles.log = logと入力すると、正常に動作します...何がうまくいかないのか分かりませんが、それは本当に些細なものでなければなりません。

答えて

0

短く:Not enough input argumentsは謎の手がかりです。これは、変数ではなく関数を使用していることを意味します。


まず、logを使用しないでください。それは組み込みの関数 - 自然対数です。もちろん、あなたはそれを上書きすることができますが、それは悪いスタイルです。

明らかに、あなたのコードには、logという名前の変数があり、そうではないと思います。私はそれを読者に練習として残して、理由を調べます。 ヒント:ロードしている.matファイルを確認してください。

+0

それが原因です。私は知っていたはずです...ありがとう! – Bart

関連する問題