1

データの視覚的な前処理を支援するためにロードする MATLAB GUI があります。基本的に、更新されたグラフを提供しながら、データ範囲を調整したり、データポイントの数を減らしたりするようにユーザーに促します。この作業が完了したら、GUI を閉じて、変数を GUI からデータ解析を行う別の MATLAB 関数に渡すことができるようにしたいと考えています。関数 TO および GUI から情報を渡す方法に関する多くの情報を見つけましたが、その逆はありません。

どんな助けでも大歓迎です。

4

3 に答える 3

1

グローバル変数は見つけにくいバグを引き起こす可能性があります。問題 (閉じるときにデータを別の関数に直接渡したい場合) の最善の解決策は、Figure Close Request Functionから分析関数を呼び出すことです。GUI が実行されている Figure を閉じるように指示されると、この関数でコードが実行され、解析関数を呼び出して GUI のデータにアクセスできます。

于 2012-07-09T22:03:12.660 に答える
1

Matlab GUI は関数です。コードは、.m他の関数と同様にファイル内に存在します。通常の関数と同様に、戻り値を持つことができます。システムをいじるのに好きなだけ手を加えるvarargoutか、必要なものを含む値、構造体、またはセル配列を単純に返すことができます。m-ファイルを開いて編集し、希望どおりに戻します。

注: Figure を閉じて適切な戻り値を生成するときに特別な処理が必要な場合は、必要に応じて closeRequestFcn を再実装できます。

于 2012-07-09T22:03:26.023 に答える
0

簡単な方法: として宣言しますglobal variable変数には、GUI からメインの MATLAB ワークスペースに転送するデータが格納されます。global variable次に、コマンド ウィンドウでも同じことを宣言します。これ以降、変数は、GUI とメイン ワークスペースの両方のスコープからアクセスできるようになります。

データをファイルに保存するために、またはsaveその他の代替手段を使用することもできますが、これはあなたの場合ではないようです。csvwritedlmwrite

于 2012-07-09T21:33:39.520 に答える