* Bug 15299 fixed: plot() for polynomials & rationals
[scilab.git] / scilab / modules / graphics / help / ja_JP / 2d_plot / plot.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) INRIA - Fabrice Leray
5  * Copyright (C) 2012 - 2016 - Scilab Enterprises
6  * Copyright (C) 2018 - 2020 - Samuel GOUGEON
7  *
8  * This file is hereby licensed under the terms of the GNU GPL v2.0,
9  * pursuant to article 5.3.4 of the CeCILL v.2.1.
10  * This file was originally licensed under the terms of the CeCILL v2.1,
11  * and continues to be available under such terms.
12  * For more information, see the COPYING file which you should have received
13  * along with this program.
14  *
15  -->
16 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
17           xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
18           xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
19           xml:lang="ja" xml:id="plot">
20     <refnamediv>
21         <refname>plot</refname>
22         <refpurpose>2Dプロット</refpurpose>
23     </refnamediv>
24     <refsynopsisdiv>
25         <title>呼び出しの手順</title>
26         <synopsis>
27             plot     // demo
28             plot(y)
29             plot(x, y)
30             plot(x, func)
31             plot(x, list(func, params))
32             plot(x, polynomial)
33             plot(x, rational)
34             plot(.., LineSpec)
35             plot(.., LineSpec, GlobalProperty)
36             plot(x1, y1, LineSpec1, x2,y2,LineSpec2,...xN, yN, LineSpecN, GlobalProperty1,.. GlobalPropertyM)
37             plot(x1,func1,LineSpec1, x2,y2,LineSpec2,...xN,funcN,LineSpecN, GlobalProperty1, ..GlobalPropertyM)
38             plot(logflag,...)
39             plot(axes_handle,...)
40         </synopsis>
41     </refsynopsisdiv>
42     <refsection role="parameters">
43         <title>引数</title>
44         <variablelist>
45             <varlistentry>
46                 <term>x</term>
47                 <listitem>
48                     <para>
49                         実数行列またはベクトル. 省略した場合, <literal>1:n</literal>であると
50                         仮定されます. ただし, <literal>n</literal>は<literal>y</literal>パラメータで
51                         指定された曲線の点の数です.
52                     </para>
53                 </listitem>
54             </varlistentry>
55             <varlistentry>
56                 <term>y</term>
57                 <listitem>
58                     実数行列またはベクトル.
59                     <para/>
60                 </listitem>
61             </varlistentry>
62             <varlistentry>
63                 <term>func</term>
64                 <listitem>
65                     <para>
66                         handle of a function, as in <literal>plot(x, sin)</literal>.
67                         If the function to plot needs some parameters as input arguments, the
68                         function and its parameters can be specified through a list, as in
69                         <literal>plot(x, list(delip, -0.4))</literal>
70                     </para>
71                 </listitem>
72             </varlistentry>
73             <varlistentry>
74                 <term>polynomial</term>
75                 <listitem>
76                     Single polynomial or array of polynomials.
77                     <para/>
78                 </listitem>
79             </varlistentry>
80             <varlistentry>
81                 <term>rational</term>
82                 <listitem>
83                     Single rational or array of rationals.
84                     <para/>
85                 </listitem>
86             </varlistentry>
87             <varlistentry>
88                 <term>y1, y2, y3,..</term>
89                 <listitem>
90                     <para>
91                         Can be any of the possible input types described above:
92                         <itemizedlist>
93                             <listitem>
94                                 vectors or matrices of real numbers or of integers
95                             </listitem>
96                             <listitem>
97                                 handle of a function (possibly in a list with its parameters).
98                             </listitem>
99                             <listitem>
100                                 polynomials
101                             </listitem>
102                             <listitem>
103                                 rationals
104                             </listitem>
105                         </itemizedlist>
106                     </para>
107                 </listitem>
108             </varlistentry>
109             <varlistentry>
110                 <term>LineSpec</term>
111                 <listitem>
112                     <para>このオプション引数は文字列で
113                         線を描画する手法を指定するショートカットとして使用されます.
114                         <literal>LineSpec</literal>は指定済みの各<literal> y</literal> または <literal>{x,y}</literal>
115                         毎に一つ指定できます.
116                         <literal>LineSpec</literal>はLineStyle,MarkerおよびColorと同時に処理されます
117                         (<link linkend="LineSpec">LineSpec</link>参照).
118                         これらの指定子はプロットされた線において線の種類,マーカの種類および色を定義します.
119                     </para>
120                 </listitem>
121             </varlistentry>
122             <varlistentry>
123                 <term>GlobalProperty</term>
124                 <listitem>
125                     <para>このオプションの引数は,
126                         グローバルオブジェクトのプロパティを定義する
127                         一連の命令<literal>{PropertyName,PropertyValue}</literal>
128                         を表し,    このプロットで作成された全ての曲線に適用されます.
129                         利用可能なプロパティの全て参照するには
130                         <link linkend="GlobalProperty">GlobalProperty</link>を参照してください.
131                     </para>
132                 </listitem>
133             </varlistentry>
134             <varlistentry>
135                 <term>logflag</term>
136                 <listitem>
137                     <para>
138                         "ln" | "nl" | "ll" : 2-character word made of "l" standing for
139                         "<emphasis role="bold">L</emphasis>ogarithmic" or/and "n" standing for
140                         "<emphasis role="bold">N</emphasis>ormal". The first character applies to
141                         the X axis, the second to the Y axis. Hence, "ln" means that the X axis
142                         is logarithmic and the Y axis is normal. The default is "nn":
143                         both axes in normal scales.
144                     </para>
145                     <para>
146                         <literal>logflag</literal> must be used after <literal>axes_handle</literal>
147                         (if any) and before the first curve's data <literal>x</literal> or
148                         <literal>y</literal> or <literal>func</literal>.
149                         It applies to all curves drawn by the <literal>plot(…)</literal> instruction.
150                     </para>
151                 </listitem>
152             </varlistentry>
153             <varlistentry>
154                 <term>axes_handle</term>
155                 <listitem>
156                     <para>
157                         このオプションの引数は,カレントの軸ではなく <literal>axes_handle</literal>で
158                         指定した軸の内部にプロットが表示されることを指定します
159                         (<link linkend="gca">gca</link>参照).
160                     </para>
161                 </listitem>
162             </varlistentry>
163         </variablelist>
164     </refsection>
165     <refsection role="description">
166         <title>説明</title>
167         <para>
168             <literal>plot</literal> は一連の二次元曲線をプロットします.
169             <literal>plot</literal> はMatlab構文との互換性を改善するために
170             修正されています.
171             グラフィックの互換性を改善するために, Matlabユーザは
172             (<link linkend="plot2d">plot2d</link>ではなく)
173             <literal>plot</literal>を使用してください.
174         </para>
175         <para>データエントリ仕様 :</para>
176         <para>本節では,記述を明確化するため,オプションの引数
177             <literal>LineSpec</literal>および <literal>GlobalProperty</literal>
178             については言及しません.
179             これはこれらの引数は,
180             (<literal>"Xdata"</literal>,
181             <literal>"Ydata"</literal> および <literal>"Zdata"</literal> プロパティを
182             除く,
183             <link linkend="GlobalProperty">GlobalProperty</link>参照)
184             エントリデータと干渉しないためです.
185             これら全てのオプション引数を同時に指定することが可能です.
186         </para>
187         <para>
188             <literal>y</literal> がベクトルの場合, plot(y) はベクトル <literal>y</literal>
189             をベクトル <literal>1:size(y,'*')</literal>に対してプロットします.
190         </para>
191         <para>
192             <literal>y</literal>が行列の場合, plot(y) は<literal>y</literal>の各列を
193             <literal>1:size(y,1)</literal>に対してプロットします.
194         </para>
195         <para>
196             <literal>x</literal> および <literal>y</literal> がベクトルの場合, plot(x,y) は
197             ベクトル <literal>y</literal> をベクトル <literal>x</literal>に対してプロットします.
198             ベクトル<literal>x</literal> および
199             <literal>y</literal> の要素数は同じである必要があります.
200         </para>
201         <para>
202             <literal>x</literal> がベクトルで <literal>y</literal> が行列の場合, plot(x,y)
203             は <literal>y</literal> の各列をベクトル <literal>x</literal>に対してプロットします.
204             この場合,<literal>y</literal> の列の数は
205             <literal>x</literal> のエントリの数と同じである必要があります.
206         </para>
207         <para>
208             <literal>x</literal> と <literal>y</literal> が行列の場合, plot(x,y) は
209             <literal>y</literal> の各列を<literal>x</literal>の同じ列に対してプロットします.
210             この場合,<literal>x</literal> と<literal>y</literal> の大きさは同じである必要があります.
211         </para>
212         <para>
213             最後に, <literal>x</literal> または <literal>y</literal> が行列の場合,
214             ベクトルは行列の各行または各列に対してプロットされます.
215             この選択は,行列の行また列の次元にベクトルの行または列の次元のどちらが
216             一致するかに応じて行われます.
217             (<literal>x</literal> または <literal>y</literal> のみが)正方行列の場合,
218             列が行よりも優先されます(以下の例参照).
219         </para>
220         <para>
221             <warning>
222                 必要でかつ可能な場合,
223                 <literal>plot</literal> は,
224                 互換性がある次元を取得するため,
225                 <literal>x</literal> および <literal>y</literal>を転置し,警告を出力します.
226                 例えば,
227                 <literal>x</literal> が<literal>y</literal>の列と同じ行数を有する場合.
228                 <literal>y</literal> が正方の場合, 転置は行われません.
229             </warning>
230         </para>
231         <para>
232             <literal>y</literal> はマクロまたはプリミティブとして定義された関数と
233             することも可能です.この場合,
234             <literal>x</literal> データを(ベクトルまたは行列として)指定する必要があり,
235             対応する<literal>y(x)</literal>の計算が暗黙の内に行われます.
236         </para>
237         <para>
238             <literal>LineSpec</literal> と<literal>GlobalProperty</literal> 引数は
239             プロットをカスタマイズするために使用されます.
240             以下に利用可能な全オプションのリストを示します.
241         </para>
242         <variablelist>
243             <varlistentry>
244                 <term>LineSpec</term>
245                 <listitem>
246                     <para>このオプションは曲線の描画方法を簡便な方法で
247                         指定する際に使用されます.
248                         このオプションは,LineStyle, Marker および Color指定子を含む文字列とする
249                         必要があります.
250                     </para>
251                     <para>これらのリファレンスは曖昧さがないように
252                         文字列内で指定することが必要です(順番は重要ではありません).
253                         例えば,ダイヤモンド型の記号を付けた赤い長い破線を指定する場合,
254                         以下のように書くことができます:
255                         <literal>'r--d'</literal> , <literal>'--dire'</literal> または
256                         <literal>'--reddiam'</literal>  または他のあいまいでない命令,
257                         もしくは全体を指定する <literal>'diamondred--'</literal>
258                         (<link linkend="LineSpec">LineSpec</link>参照)
259                     </para>
260                     <para>
261                         線の種類,色,マーカの色(および大きさ)も
262                         ポリラインエンティティプロパティにより(再)設定できることに
263                         注意してください
264                         (<link linkend="polyline_properties">polyline_properties</link>参照).
265                     </para>
266                 </listitem>
267             </varlistentry>
268             <varlistentry>
269                 <term>GlobalProperty</term>
270                 <listitem>
271                     <para>
272                         このオプションは, <literal>LineSpec</literal>を使用する
273                         よりも多くのオプションを用いて曲線のプロット方法を指定できます.
274                         <literal>PropertyName</literal>を定義する文字列と
275                         その値である<literal>PropertyValue</literal>
276                         (<literal>PropertyName</literal>の型に依存して文字列または整数または...)
277                         の組で指定する必要があります.
278                         <literal>GlobalProperty</literal>により複数のプロパティ,
279                         つまり, LineSpec により利用可能なあらゆるプロパティ,
280                         マーカの色(表示色および背景色), 視認性, クリッピング, 曲線の太さ,
281                         を設定可能です.
282                         (<link linkend="GlobalProperty">GlobalProperty</link>参照)
283                     </para>
284                     <para>
285                         これらのプロパティは全て
286                         ポリラインエンティティプロパティ
287                         (<link linkend="polyline_properties">polyline_properties</link>参照)
288                         により(再)設定できることに注意してください.
289                     </para>
290                 </listitem>
291             </varlistentry>
292         </variablelist>
293     </refsection>
294     <refsection role="description">
295         <title>注意</title>
296         <para>デフォルトでは, 連続したプロットは重ね描きされます.
297             前のプロットを消去するには,
298             <literal>clf()</literal>を使用してください. <literal>auto_clear</literal> モードを
299             デフォルトで有効にするには,次のようにデフォルトの軸を編集してください:
300         </para>
301         <para>da=gda();</para>
302         <para>da.auto_clear = 'on'</para>
303         <para>
304             表示を改善するために<literal>plot</literal>関数が親の軸の
305             <literal>box</literal>プロパティを修正することがあります.
306             これは,親の軸が<literal>plot</literal>のコールにより作成されたか,
307             コール前に空である場合に行われます.
308             軸の一つが原点を中心にしている場合, ボックスは無効となります.
309             その他の場合, ボックスが有効になります.
310         </para>
311         <para>
312             ボックスプロパティと軸の配置に関する詳細については,
313             <link linkend="axes_properties">axes_properties</link>を参照ください.
314         </para>
315         <para>
316             色を指定しない場合,曲線をプロットする際にデフォルトの色テーブルが
317             使用されます.
318             複数の線を描画する際,plotコマンドは自動的に
319             このテーブルに基づき周期的に選択します.
320             以下に使用される色を示します:
321         </para>
322         <informaltable border="1">
323             <tr>
324                 <th> <literal>R</literal> </th>
325                 <th> <literal>G</literal> </th>
326                 <th> <literal>B</literal> </th>
327             </tr>
328             <tr> <td>0.</td>   <td>0.</td>   <td>1.</td>   </tr>
329             <tr> <td>0.</td>   <td>0.5</td>  <td>0.</td>   </tr>
330             <tr> <td>1.</td>   <td>0.</td>   <td>0.</td>   </tr>
331             <tr> <td>0.</td>   <td>0.75</td> <td>0.75</td> </tr>
332             <tr> <td>0.75</td> <td>0.</td>   <td>0.75</td> </tr>
333             <tr> <td>0.75</td> <td>0.75</td> <td>0.</td>   </tr>
334             <tr> <td>0.25</td> <td>0.25</td> <td>0.25</td> </tr>
335         </informaltable>
336         <para/>
337         <para>
338             コマンド <literal>plot</literal> を入力することによりデモを見ることができます.
339         </para>
340     </refsection>
341     <refsection role="examples">
342         <title>例</title>
343         <para>
344             <emphasis role="bold">Choosing the normal or logarithmic plotting mode:</emphasis>
345         </para>
346         <programlisting role="example"><![CDATA[
347 gda().grid = [1 1]*color("grey70");
348 title(gda(), "fontsize", 3, "color", "lightseagreen", "fontname", "helvetica bold");
349
350 x = linspace(1e-1,100,1000);
351 xm = 35;
352 dx = 17;
353 G = exp(-((x-xm)/dx).^2/2)*30;
354
355 scf(1); clf
356
357 subplot(2,2,1), plot(x, G),       title("plot(x, y)")
358 subplot(2,2,2), plot("ln", x, G), title("semilog-x : plot(""ln"", x, y)"); gca().sub_ticks(1) = 8;
359 subplot(2,2,3), plot("nl", x, G), title("semilog-y : plot(""nl"", x, y)"); gca().sub_ticks(2) = 8;
360 subplot(2,2,4), plot("ll", x, G), title("loglog : plot(""ll"", x, y)");    gca().sub_ticks = [8 8];
361
362 sda();
363  ]]></programlisting>
364         <scilab:image>
365             gda().grid = [1 1]*color("grey70");
366             title(gda(), "", "fontsize", 3, "color", "lightseagreen", "fontname", "helvetica bold");
367
368             x = linspace(1e-1,100,1000);
369             xm = 35;
370             dx = 17;
371             G = exp(-((x-xm)/dx).^2/2)*30;
372             scf(1); clf
373             subplot(2,2,1), plot(x, G),       title("plot(x, y)")
374             subplot(2,2,2), plot("ln", x, G), title("semilog-x : plot(""ln"", x, y)")
375             gca().sub_ticks(1) = 8;
376             subplot(2,2,3), plot("nl", x, G), title("semilog-y : plot(""nl"", x, y)")
377             gca().sub_ticks(2) = 8;
378             subplot(2,2,4), plot("ll", x, G), title("loglog : plot(""ll"", x, y)")
379             gca().sub_ticks = [8 8];
380
381             gcf().axes_size = [750 520];
382             sda();
383         </scilab:image>
384         <para/>
385         <para>
386             <emphasis role="bold">Simple plot of a single curve:</emphasis>
387         </para>
388         <programlisting role="example"><![CDATA[
389 // Default abscissae = indices
390 subplot(1,2,1)
391 plot(sin(0:0.1:2*%pi))
392 xlabel("x indices")
393
394 // With explicit abscissae:
395 x = [0:0.1:2*%pi]';
396 subplot(1,2,2)
397 plot(x, sin(x))
398 xlabel("Specified abscissae")
399  ]]></programlisting>
400         <scilab:image>
401             // Default abscissae = indices
402             subplot(1,2,1)
403             plot(sin(0:0.1:2*%pi))
404             xlabel("x indices")
405
406             // With explicit abscissae:
407             x = [0:0.1:2*%pi]';
408             subplot(1,2,2)
409             plot(x, sin(x))
410             xlabel("Specified abscissae")
411
412             gcf().axes_size = [700 350];
413         </scilab:image>
414         <para/>
415         <para>
416             <emphasis role="bold">Multiple curves with shared abscissae:</emphasis>
417             Y: 1 column = 1 curve:
418         </para>
419         <programlisting role="example"><![CDATA[
420 clf
421 x = [0:0.1:2*%pi]';
422 plot(x, [sin(x) sin(2*x) sin(3*x)])
423  ]]></programlisting>
424         <scilab:image>
425             x=[0:0.1:2*%pi]';
426             plot(x,[sin(x) sin(2*x) sin(3*x)])
427
428             gcf().axes_size = [700 350];
429         </scilab:image>
430         <para/>
431         <para>
432             <emphasis role="bold">
433                 Specifying a macro or a builtin instead of explicit ordinates:
434             </emphasis>
435         </para>
436         <programlisting role="example"><![CDATA[
437 clf
438 subplot(2,2,1)         // sin() is a builtin
439 plot(1:0.1:10, sin)    // <=> plot(1:0.1:10, sin(1:0.1:10))
440 title("plot(x, sin)", "fontsize",3)
441
442 // with a macro:
443 deff('y = myFun(x)','y = x + rand(x)')
444 subplot(2,2,2)
445 plot(-3:0.1:5, myFun)
446 title("plot(x, myFun)", "fontsize",3)
447
448 // With functions with parameters:
449 subplot(2,2,3)
450 plot(1:0.05:7, list(delip, -0.4))  // <=> plot(1:0.05:7, delip(1:0.05:7,-0.4) )
451 title("plot(x, list(delip,-0.4))", "fontsize",3)
452
453 function Y = myPow(x,p)
454     [X,P] = ndgrid(x,p);
455     Y = X.^P;
456     m = max(abs(Y),"r");
457     for i = 1:size(Y,2)
458         Y(:,i) = Y(:,i)/m(i);
459     end
460 endfunction
461 x = -5:0.1:6;
462 subplot(2,2,4)
463 plot(x, list(myPow,1:5))
464 title("plot(x, list(myPow,1:5))", "fontsize",3)
465  ]]></programlisting>
466         <scilab:image><![CDATA[
467             subplot(2,2,1)         // sin() is a builtin
468             plot(1:0.1:10, sin)    // <=> plot(1:0.1:10, sin(1:0.1:10))
469             title("plot(x,sin)", "fontsize",3)
470
471             // with a macro:
472             deff('y = myFun(x)','y = x + rand(x)')
473             subplot(2,2,2)
474             plot(-3:0.1:5, myFun)
475             title("plot(x, myFun)", "fontsize",3)
476
477             // With functions with parameters:
478             subplot(2,2,3)
479             plot(1:0.05:7, list(delip, -0.4))  // <=> plot(1:0.05:7, delip(1:0.05:7,-0.4) )
480             title("plot(x, list(delip,-0.4))", "fontsize",3)
481
482             function Y = myPow(x,p)
483                 [X,P] = ndgrid(x,p);
484                 Y = X.^P;
485                 m = max(abs(Y),"r");
486                 for i = 1:size(Y,2)
487                     Y(:,i) = Y(:,i)/m(i);
488                 end
489             endfunction
490             x = -5:0.1:6;
491             subplot(2,2,4)
492             plot(x, list(myPow,1:5))
493             title("plot(x, list(myPow,1:5))", "fontsize",3)
494
495             gcf().axes_size = [730 500];
496         ]]></scilab:image>
497         <para/>
498         <para>
499             <emphasis role="bold">
500                 Plotting the graph of polynomials or rationals:
501             </emphasis>
502         </para>
503         <para>
504         <programlisting role="example"><![CDATA[
505 clf
506 s = %s;
507
508 // Polynomials
509 x = -0.5:0.02:3;
510 p = s*[2 ; (s-2) ; (s-1)*(s-2)]
511 subplot(1,2,1)
512 plot(x, p)
513 legend(prettyprint(p,"latex","",%t), 2);
514
515 // Rationals
516 x = -0.5:0.02:2;
517 r = (s-1)*s/(s-7)./[s+1, s-4]
518 subplot(1,2,2)
519 plot(x, r)
520 legend(prettyprint(r,"latex","",%t), 2);
521
522 gcf().children.grid = color("grey70")*[1 1]; // grids
523 gcf().children.children([1 3]).font_size=3;  // legends
524  ]]></programlisting>
525         <screen><![CDATA[
526 --> p = s*[2 ; (s-2) ; (s-1)*(s-2)]
527  p  =
528   2s
529   -2s +s²
530   2s -3s² +s³
531
532 ../..
533 --> r = (s-1)*s/(s-7)./[s+1, s-4]
534  r  =
535      -s +s²      -s +s²
536    ----------  -----------
537    -7 -6s +s²  28 -11s +s²
538 ]]></screen>
539         <scilab:image><![CDATA[
540             s = %s;
541
542             // Polynomials
543             x = -0.5:0.02:3;
544             p = s*[2 ; (s-2) ; (s-1)*(s-2)]
545             subplot(1,2,1)
546             plot(x, p)
547             legend(prettyprint(p,"latex","",%t), 2);
548
549             // Rationals
550             x = -0.5:0.02:2;
551             r = (s-1)*s/(s-7)./[s+1, s-4]
552             subplot(1,2,2)
553             plot(x, r)
554             legend(prettyprint(r,"latex","",%t), 2);
555
556             gcf().children.grid = color("grey70")*[1 1]; // grids
557             gcf().children.children([1 3]).font_size=3;  // legends
558             gcf().axes_size = [650 400];
559         ]]></scilab:image>
560         </para>
561         <para/>
562         <para>
563             <emphasis role="bold">Setting curves simple styles when calling plot():</emphasis>
564         </para>
565         <para>
566         <programlisting role="example"><![CDATA[
567 clf
568 t = -%pi:%pi/20:2*%pi;
569 // sin() : in Red, with O marks, without line
570 // cos() : in Green, with + marks, with a solid line
571 // gaussian: in Blue, without marks, with dotted line
572 gauss = 1.5*exp(-(t/2-1).^2)-1;
573
574 plot(t,sin,'ro', t,cos,'g+-', t,gauss,':b')
575  ]]></programlisting>
576         <scilab:image><![CDATA[
577             t = -%pi:%pi/20:2*%pi;
578             // sin() : in Red, with O marks, without line
579             // cos() : in Green, with + marks, with a solid line
580             // gaussian: in Blue, without marks, with dotted line
581             gauss = 1.5*exp(-(t/2-1).^2)-1;
582
583             plot(t,sin,'ro', t,cos,'g+-', t,gauss,':b')
584
585             gcf().axes_size = [800 400];
586         ]]>
587         </scilab:image>
588         </para>
589         <para>
590         Vertical segments between two curves, with automatic colors, and using Global properties
591         for markers styles. Targeting a defined axes.
592         </para>
593         <para>
594         <programlisting role="example"><![CDATA[
595 clf
596 subplot(1,3,3)
597 ax3 = gca();         // We will draw here later
598 xsetech([0 0 0.7 1]) // Defines the first Axes area
599 t = -3:%pi/20:7;
600 // Tuning markers properties
601 plot([t ;t],[sin(t) ;cos(t)],'marker','d','markerFaceColor','green','markerEdgeColor','yel')
602
603 // Targeting a defined axes
604 plot(ax3, t, sin)
605  ]]></programlisting>
606         <scilab:image><![CDATA[
607             clf
608             subplot(1,3,3)
609             ax3 = gca();         // We will draw here later
610             xsetech([0 0 0.7 1]) // Defines the first Axes area
611             t = -3:%pi/20:7;
612             // Tuning markers properties
613             plot([t ;t],[sin(t) ;cos(t)],'marker','d','markerFaceColor','green','markerEdgeColor','yel')
614
615             // Targeting a defined axes
616             plot(ax3, t, sin)
617
618             gcf().axes_size = [800 400];
619         ]]>
620         </scilab:image>
621         </para>
622         <para/>
623         <para>
624             <emphasis role="bold">Case of a non-square Y matrix:</emphasis>
625             When it is consistent and required, X or/and Y data are
626             automatically transposed in order to become plottable.
627         </para>
628         <programlisting role="example"><![CDATA[
629 clf()
630 x = [5 6 7 8]
631 y = [1   1   1   1   8
632      2   3   4   5   9
633      3   4   5   6  10
634      4   5   6   7  12];
635
636 // Only one matching possibility case: how to make 4 identical plots in 4 manners...
637 // x is 1x4 (vector) and y is 4x5 (non square matrix)
638 subplot(221); plot(x', y , "o-");    // OK as is
639 subplot(222); plot(x , y , "o-");    // x is transposed
640 subplot(223); plot(x', y', "o-");    // y is transposed
641 subplot(224); plot(x , y', "o-");    // x and y are transposed
642  ]]></programlisting>
643         <scilab:image>
644             x = [5 6 7 8]
645             y = [1   1   1   1   8
646                  2   3   4   5   9
647                  3   4   5   6  10
648                  4   5   6   7  12];
649
650             // Only one matching possibility case: how to make 4 identical plots in 4 manners...
651             // x is 1x4 (vector) and y is 4x5 (non square matrix)
652             subplot(221); plot(x', y , "o-");    // OK as is
653             subplot(222); plot(x , y , "o-");    // x is transposed
654             subplot(223); plot(x', y', "o-");    // y is transposed
655             subplot(224); plot(x , y', "o-");    // x and y are transposed
656         </scilab:image>
657         <para>
658             <emphasis role="bold">Case of a square Y matrix, and X implicit or square:</emphasis>
659         </para>
660         <programlisting role="example"><![CDATA[
661 clf
662 t = [1   1   1   1
663      2   3   4   5
664      3   4   5   6
665      4   5   6   7];
666
667 subplot(231), plot(t,"o-") , title("plot(t)",  "fontsize",3)
668 subplot(234), plot(t',"o-"), title("plot(t'')", "fontsize",3)
669
670 subplot(232), plot(t,t,"o-") , title("plot(t, t)",  "fontsize",3)
671 subplot(233), plot(t,t',"o-"), title("plot(t,t'')", "fontsize",3)
672
673 subplot(235), plot(t', t,"o-"),  title("plot(t'', t)",   "fontsize",3)
674 subplot(236), plot(t', t',"o-"), title("plot(t'', t'')", "fontsize",3)
675
676 for i=1:6, gcf().children(i).data_bounds([1 3]) = 0.5; end
677  ]]></programlisting>
678         <scilab:image>
679             clf
680             t = [1   1   1   1
681                  2   3   4   5
682                  3   4   5   6
683                  4   5   6   7];
684
685             subplot(231), plot(t,"o-") , title("plot(t)",  "fontsize",3)
686             subplot(234), plot(t',"o-"), title("plot(t'')", "fontsize",3)
687
688             subplot(232), plot(t,t,"o-") , title("plot(t, t)",  "fontsize",3)
689             subplot(233), plot(t,t',"o-"), title("plot(t,t'')", "fontsize",3)
690
691             subplot(235), plot(t', t,"o-"),  title("plot(t'', t)",   "fontsize",3)
692             subplot(236), plot(t', t',"o-"), title("plot(t'', t'')", "fontsize",3)
693
694             for i=1:6, gcf().children(i).data_bounds([1 3]) = 0.5; end
695
696             gcf().axes_size = [800 450];
697         </scilab:image>
698         <para/>
699         <para>
700             <emphasis role="bold">Special cases of a matrix X and a vector Y:</emphasis>
701         </para>
702         <programlisting role="example"><![CDATA[
703 clf
704 X = [1   1   1   1
705      2   3   4   5
706      3   4   5   6
707      4   5   6   7];
708 y = [1 2 3 4];
709
710 subplot(221), plot(X, y,  "o-"), title("plot(X, row)",  "fontsize",3)
711         // equivalent to plot(t, [1 1 1 1; 2 2 2 2; 3 3 3 3; 4 4 4 4])
712 subplot(223), plot(X, y', "o-"), title("plot(X, col)  (row = col'')",  "fontsize",3)
713 subplot(222), plot(X',y,  "o-"), title("plot(X'', row)",  "fontsize",3)
714 subplot(224), plot(X',y', "o-"), title("plot(X'', col)  (row = col'')",  "fontsize",3)
715
716 for i = 1:4, gcf().children(i).data_bounds([1 3]) = 0.5; end
717  ]]></programlisting>
718         <scilab:image>
719             clf
720             X = [1   1   1   1
721                  2   3   4   5
722                  3   4   5   6
723                  4   5   6   7];
724             y = [1 2 3 4];
725
726             subplot(221), plot(X, y,  "o-"), title("plot(X, row)",  "fontsize",3)
727                     // equivalent to plot(t, [1 1 1 1; 2 2 2 2; 3 3 3 3; 4 4 4 4])
728             subplot(223), plot(X, y', "o-"), title("plot(X, col)  (row = col'')",  "fontsize",3)
729             subplot(222), plot(X',y,  "o-"), title("plot(X'', row)",  "fontsize",3)
730             subplot(224), plot(X',y', "o-"), title("plot(X'', col)  (row = col'')",  "fontsize",3)
731
732             for i = 1:4, gcf().children(i).data_bounds([1 3]) = 0.5; end
733         </scilab:image>
734         <para/>
735         <para/>
736         <para>
737             <emphasis role="bold">Post-tuning Axes and curves:</emphasis>
738         </para>
739         <programlisting role="example"><![CDATA[
740 x=[0:0.1:2*%pi]';
741 plot(x-4,sin(x),x+2,cos(x))
742
743 // (0,0)を中心とする軸
744 a=gca(); // 軸エンティティのハンドル
745 a.x_location = "origin";
746 a.y_location = "origin";
747 isoview on
748
749 // plotにより作成されたエンティティに複数の処理を行う
750 a.children // 軸の子のリスト : ここでは,2個のエンティティの複合子オブジェクト
751 poly1= a.children.children(2); //線分群のハンドルをpoly1 に保存
752 poly1.foreground = 4; // スタイルを変更する別の方法...
753 poly1.thickness = 3;  // ...曲線の太さ.
754 poly1.clip_state='off' // 制御をクリップ
755 isoview off
756  ]]></programlisting>
757         <scilab:image>
758             x = [0:0.1:2*%pi]';
759             plot(x-4,sin(x),x+2,cos(x))
760             a = gca();
761             a.x_location = "origin";
762             a.y_location = "origin";
763             isoview on
764             a.children
765             poly1 = a.children.children(2);
766             poly1.foreground = 4;
767             poly1.thickness = 3;
768             poly1.clip_state='off'
769             isoview off
770         </scilab:image>
771     </refsection>
772     <refsection role="see also">
773         <title>参照</title>
774         <simplelist type="inline">
775             <member>
776                 <link linkend="plot2d">plot2d</link>
777             </member>
778             <member>
779                 <link linkend="plot2d2">plot2d2</link>
780             </member>
781             <member>
782                 <link linkend="plot2d3">plot2d3</link>
783             </member>
784             <member>
785                 <link linkend="plot2d4">plot2d4</link>
786             </member>
787             <member>
788                 <link linkend="param3d">param3d</link>
789             </member>
790             <member>
791                 <link linkend="surf">surf</link>
792             </member>
793             <member>
794                 <link linkend="scf">scf</link>
795             </member>
796             <member>
797                 <link linkend="clf">clf</link>
798             </member>
799             <member>
800                 <link linkend="close">close</link>
801             </member>
802             <member>
803                 <link linkend="delete">delete</link>
804             </member>
805             <member>
806                 <link linkend="LineSpec">LineSpec</link>
807             </member>
808             <member>
809                 <link linkend="color_list">Named colors</link>
810             </member>
811             <member>
812                 <link linkend="GlobalProperty">GlobalProperty</link>
813             </member>
814         </simplelist>
815     </refsection>
816     <refsection role="history">
817         <title>履歴</title>
818         <revhistory>
819             <revision>
820                 <revnumber>6.0.1</revnumber>
821                 <revdescription>
822                     The "color"|"foreground", "markForeground", and "markBackground" GlobalProperty
823                     colors can now be chosen among the full predefined colors list, or by
824                     their "#RRGGBB" hexadecimal codes, or by their indices in the colormap.
825                 </revdescription>
826             </revision>
827             <revision>
828                 <revnumber>6.0.2</revnumber>
829                 <revdescription>
830                     Plotting a function func(x, params) with input parameters is now possible with
831                     plot(x, list(func, params)).
832                 </revdescription>
833             </revision>
834             <revision>
835                 <revnumber>6.1.0</revnumber>
836                 <revdescription>
837                     logflag option added.
838                 </revdescription>
839             </revision>
840             <revision>
841                 <revnumber>6.1.1</revnumber>
842                 <revdescription>
843                     Polynomials and rationals can be plotted.
844                 </revdescription>
845             </revision>
846         </revhistory>
847     </refsection>
848 </refentry>