0

4 つの matlab コードがあり、それぞれがプロットを生成します。すべてのプロットを 1 つのプロットに結合して、それぞれの遷移を表示するにはどうすればよいですか?

4

2 に答える 2

2

同じ図に複数の線をプロットする場合は、 hold onを使用できます。たとえば、次のようになります。

plot(x1,y1,'ok');    
hold on
plot(x2,y2,'or');

それらがすべて 1 つの行を形成すると言っている場合は、次のように入力ベクトルを連結してみてください。

%Mock input
x1 = 0:9;
x2 = 10:19;
x3 - 20:29;
x4 = 30:39;
y1 = 2*x1 -20;
y2 = 2*x2 -20;
y3 = 2*x3 -20;
y4 = 2*x4 -20;
%Example of plotting concatenated vectors
plot( [x1;x2;x3;x4], [y1;y2;y3;y4]);
于 2012-05-21T06:28:43.597 に答える
0

4 つすべてを同じ図 (図 1 など) に配置する場合は、次のようにします。

%% In PlotCode1.m
figure(1)
hold on
...%your plotting code

%% In PlotCode2.m
figure(1)
hold on
...%your plotting code

また、図 1 を閉じたりクリアしたりせずに各 PlotCode.m ファイルを実行すると、すべての行が同じ図に表示されます。

別の方法として、異なるプロット ファイルのそれぞれを、図の番号を入力として受け取る関数に変換することもできます。例えば:

   % In PlotCode1.m
   function PlotCode1(num)
     figure(num)
     hold on
     %Your plotting code

% In PlotCode2.m
  function PlotCode2(num)
     figure(num)
     hold on
     %Your plotting code

これで、これらの各関数を 1 つのスクリプトで呼び出すことができます。

 fignum = 2;
 PlotCode1(fignum)
 PlotCode2(fignum)

これで、すべてが図 2 にプロットされます。

于 2012-05-21T06:18:04.033 に答える