<?xml version="1.0" encoding="UTF-8"?>
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="fr" xml:id="drawaxis">
    <refnamediv>
        <refname>drawaxis</refname>
        <refpurpose>dessine un axe  </refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>Séquence d'appel</title>
        <synopsis>
            drawaxis([options]) // options : x,y,dir,sub_int,fontsize,format_n,seg,textcolor,ticscolor,tics
            e = drawaxis([options])
        </synopsis>
    </refsynopsisdiv>
    <refsection>
        <title>Paramètres</title>
        <variablelist>
            <varlistentry>
                <term>dir=chaîne  </term>
                <listitem>
                    <para>
                        utilisé pour spécifier la direction des graduations. <literal>chaîne</literal> peut être choisi parmi  'u','r','d','l' ('l' est la valeur par défaut). Les valeurs 'u','r','d','l' signifient up (en haut), right (à droite) , down (en bas) , left (à gauche).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>tics=chaîne  </term>
                <listitem>
                    <para>
                        valeur décrivant comment sont données les graduations.   <literal>chaîne</literal> peut être choisi parmi 'v','r', et 'i' ('v' est la valeur par défaut).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>x,y  </term>
                <listitem>
                    <para>deux vecteurs donnant les positions des graduations.
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>val=chaîne  </term>
                <listitem>
                    <para>une matrice de chaînes de caractères donnant les labels à dessiner en face des graduations.
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>fontsize=int  </term>
                <listitem>
                    <para>
                        spécifie la taille de la police utilisée pour dessiner les labels des graduations. La valeur par défaut est  <literal>-1</literal> (taille courante de police).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>format_n=chaîne  </term>
                <listitem>
                    <para>
                        format utilisé pour afficher les nombres au dessus des graduations, <literal>chaîne</literal> spécifiant
                        le format comme dans la fonction printf du langage C (par exemple <literal>chaîne="%.3f"</literal>).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>seg= 1 ou 0  </term>
                <listitem>
                    <para>valeur contrôlant l'affichage du segment de base de l'axe (1 par défaut).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>sub_int=entier  </term>
                <listitem>
                    <para>un entier donnant le nombre de sous-graduations
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>textcolor=entier  </term>
                <listitem>
                    <para>
                        spécifie la couleur à utiliser pour afficher les valeurs sur l'axe. La valeur par défaut est <literal>-1</literal> (couleur courante).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>ticscolor=entier  </term>
                <listitem>
                    <para>
                        spécifie la couleur à utiliser pour dessiner les graduations. La valeur par défaut est <literal>-1</literal> (couleur courante).
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>e</term>
                <listitem>
                    <para>
                        handle, le handle de l'axe créé.
                    </para>
                </listitem>
            </varlistentry>
        </variablelist>
    </refsection>
    <refsection>
        <title>Description</title>
        <para>
            <literal>drawaxis</literal> est utilisée pour dessiner un axe vertical ou horizontal. Cette fonction renvoie le handle de l'axe créé.
            La direction de l'axe est donnée par dir <literal>dir = 'u'</literal> ou <literal>'d'</literal> donne un axe horizontal avec des graduations
            dirigées vers le haut (<literal>'u'</literal>) ou le bas (<literal>'d'</literal>).
            <literal>dir = 'r'</literal> ou <literal>'l'</literal> donne un axe vertical avec des graduations allant vers la droite (<literal>'r'</literal>) ou vers la gauche (<literal>'l'</literal>).
        </para>
        <para>
            <literal>x</literal> et <literal>y</literal> donnent les positions des graduations.
            Si l'axe est horizontal alors <literal>y</literal>
            doit être un scalaire ou peut être omis et <literal>x</literal>
            est un vecteur. La signification de <literal>x</literal>
            est contrôlée par <literal>tics</literal>.
        </para>
        <para>
            Si <literal>tics='v'</literal> alors <literal>x</literal> donne les positions des graduations sur l'axe des x.
        </para>
        <para>
            Si <literal>tics='r'</literal> alors <literal>x</literal> doit être de taille 3. <literal>x=[xmin,xmax,n]</literal> et
            <literal>n</literal> donne le nombre d'intervalles.
        </para>
        <para>
            Si <literal>tics='i'</literal> alors <literal>x</literal> doit être de taille 4, <literal>x=[k1,k2,a,n]</literal>.
            Dans ce cas <literal>xmin=k1*10^a</literal>, <literal>xmax=k2*10^a</literal> et <literal>n</literal> donne le nombre d'intervalles.
        </para>
        <para>
            Si <literal>y</literal> est omis alors l'axe est positionné en haut du cadre si <literal>dir='u'</literal> ou en bas si <literal>dir='d'</literal>
        </para>
        <para>
            Par défaut, les nombres sont dessinés sur l'axe. Ils sont dessinés en utilisant un format par défaut qui peut être changé avec <literal>format_n</literal>.
            Il est aussi possible d'afficher des chaînes de caractères données au lieu des nombres,
            si <literal>val</literal> est fourni en argument. La taille de <literal>val</literal> doit alors
            être égale au nombre de graduations.
        </para>
    </refsection>
    <refsection>
        <title>Exemples</title>
        <programlisting role="example"><![CDATA[
plot2d(1:10,1:10,1,"020")
// axe horizontal
e = drawaxis(x=2:7,y=4,dir='u',tics='v')
// axe horizontal en haut du cadre
drawaxis(x=2:7,dir='u',tics='v')
// axe horizontal en bas du cadre
e = drawaxis(x=2:7,dir='d',tics='v')

// axe horizontal donné par une plage de variation
drawaxis(x=[2,7,3],y=4,dir='d',tics='r')

// axe vertical
e = drawaxis(x=4,y=2:7,dir='r',tics='v')
e = drawaxis(x=2,y=[2,7,3],dir='l',tics='r')
e = drawaxis(y=2:7,dir='r',tics='v')
e = drawaxis(y=2:7,dir='l',tics='v')

// axe horizontal avec chaînes de caractères au dessus des graduations
drawaxis(x=2:7,y=8,dir='u',tics='v',val='A'+string(1:6));
// axe vertical avec chaînes de caractères au dessus des graduations
drawaxis(x=8,y=2:7,dir='r',tics='v',val='B'+string(1:6));

// axe horizontal avec 'i'
e = drawaxis(x=[2,5,0,3],y=9,dir='u',tics='i');
e = drawaxis(x=9,y=[2,5,0,3],dir='r',tics='i',sub_int=5);

// encore un axe horizontal
drawaxis(x=2:7,y=4,dir='u',tics='v',fontsize=10,textcolor=9,ticscolor=7,seg=0,sub_int=20)
 ]]></programlisting>
        <scilab:image>
            plot2d(1:10,1:10,1,"020")
            drawaxis(x=2:7,y=4,dir='u',tics='v')
            drawaxis(x=2:7,dir='u',tics='v')
            drawaxis(x=2:7,dir='d',tics='v')

            drawaxis(x=[2,7,3],y=4,dir='d',tics='r')

            drawaxis(x=4,y=2:7,dir='r',tics='v')
            drawaxis(x=2,y=[2,7,3],dir='l',tics='r')
            drawaxis(y=2:7,dir='r',tics='v')
            drawaxis(y=2:7,dir='l',tics='v')

            drawaxis(x=2:7,y=8,dir='u',tics='v',val='A'+string(1:6));
            drawaxis(x=8,y=2:7,dir='r',tics='v',val='B'+string(1:6));

            drawaxis(x=[2,5,0,3],y=9,dir='u',tics='i');
            drawaxis(x=9,y=[2,5,0,3],dir='r',tics='i',sub_int=5);

            drawaxis(x=2:7,y=4,dir='u',tics='v',fontsize=10,textcolor=9,ticscolor=7,seg=0,sub_int=20)
        </scilab:image>
    </refsection>
    <refsection role="see also">
        <title>Voir aussi</title>
        <simplelist type="inline">
            <member>
                <link linkend="plot_multiscaled">Multiscaled plots</link>
            </member>
            <member>
                <link linkend="axis_properties">axis_properties</link>
            </member>
        </simplelist>
    </refsection>
</refentry>
