1

最適化アルゴリズムを使用して、特定の汎関数の最適な形状を見つけます。すべてがどこに向かっているのかを確認するために、プログラムが反復ごとに現在の図を表示するようにしました。問題は、プログラムが動作している間は何もできないことです (プログラムが終了するまでに 5 ~ 10 分かかります)。マトラブ図。

図が変更されたときにmatlab図が上にならないようにすることは可能ですか? たとえば、デュアル モニター設定を使用し、フィギュアを 2 番目のモニターに移動しました。現在作業中のウィンドウからフォーカスを変更せずに Figure を変更できますか?

4

1 に答える 1

1

OuterPositionトリックを使用しませんか?画面の右上 3 分の 1 に Figure を保持する必要がある例を次に示します。

scnsize = get(0,'ScreenSize'); % get screen size
fig1 = figure;
position = get(fig1,'Position')
outerpos = get(fig1,'OuterPosition')
borders = outerpos - position
edge = -borders(1)/2;
pos1 = [scnsize(3)/2 + edge,...
    scnsize(4) * (2/3),...
    scnsize(3)/2 - edge,...
    scnsize(4)/3];

プロパティを変更して Figure の位置を変更しOuterPositionます。

 set(fig1,'OuterPosition',pos1) 

いくつかの処理が行われている間、Figure ウィンドウ全体を無効にするこのオプションもあります....

于 2013-01-22T11:26:02.867 に答える