Pour se repérer dans la fenêtre de dessin, on y place un repère cartésien, que je désignerai sous le nom de {\sl repère $jps$}. Ce repère est défini par quatre paramètres principaux~: $xmin$, $xmax$, $ymin$ et $ymax$, fixés respectivement à $-5, 5, -5, 5$ par défaut, paramètres que l'on peut modifier en utilisant les opérateurs |setxrange| et |setyrange|. Si le format de l'image n'est pas complètement déterminé (autrement dit si le paramètre $format$, et au moins un des paramètres $width$ et $height$ n'ont pas été fixés par l'utilisateur), et s'il n'y a pas d'indications supplémentaires, le script choisira un format d'image tel que le repère $jps$ soit orthonormé. %\epsfxsize 100mm Par exemple, voici un fichier $jps$, et la figure générée~: \exemple {ex_02} On peut utiliser plusieurs fois les commandes |setxrange| ou |setyrange| dans un même fichier, mais il faut savoir que la première occurence de chacune d'entre elle sera interprétée par le script |jps2ps|. Pour des raisons techniques (voir paragraphe suivant), il est nécessaire que ces premières occurences soient chacune seule sur une ligne, avec un argument strictement numérique. Ces contraintes sont levées dès la deuxième occurence, qui ne sera interprétée que par postscript. Pour avoir un repère non orthonormé, la commande |setxyrapport| permet d'indiquer le rapport entre les unités sur $Ox$ et les unités sur $Oy$. Ainsi, la commande |2 setxyrapport| indique que l'unité sur l'axe $Ox$ est le double de celle sur $Oy$. Pour avoir un repère non orthogonal, la commande |setangle_repere| permet de spécifier l'angle en degrés que fait la demi-droite $(O, \vec \imath \, )$ avec la demi droite $(O, \vec \jmath \,)$ (où $(O, \vec \imath , \vec \jmath \, )$ est la base canonique associée au repère $jps$). Là encore, cette commande doit être interprétée par le script |jps2ps| et elle subit les mêmes contraintes que les commandes |setwidth|, etc\dots \exemple {format4} En résumé~: \syntaxe \longref {$x_1$ $x_2$} {setxrange} {$-$} {Affecte respectivement les valeurs $x_1$ et $x_2$ à $xmin$ et $xmax$ (amplitude horizontale de la fenêtre de dessin). La première occurence de cette instruction dans le fichier $jps$ est interprétée par le script pour déterminer la BoundingBox.} \longref {$y_1$ $y_2$} {setyrange} {$-$} {Affecte respectivement les valeurs $y_1$ et $y_2$ à $ymin$ et $ymax$ (amplitude verticale de la fenêtre de dessin). La première occurence de cette instruction dans le fichier $jps$ est interprétée par le script pour déterminer la BoundingBox.} \longref {$\alpha $} {setxyrapport} {$-$} {Instruction destinée au script $jps2ps$. Elle indique que le rapport entre l'unité sur $Ox$ et l'unité sur $Oy$ est $\alpha $. Attention, $\alpha $ doit être lisible en clair par le script} \longref {$\alpha $} {setangle\_repere} {$-$} {Instruction destinée au script $jps2ps$. Elle indique que l'angle entre les axes $Ox$ et $Oy$ est de $\alpha $ degrés. Attention, $\alpha $ doit être lisible en clair par le script} \endsyntaxe Et on a les variables~: \syntaxe \Longref {} {xmin} {borne inférieure sur l'axe $Ox$} {$-5$} \Longref {} {xmax} {borne supérieure sur l'axe $Ox$} {$5$} \Longref {} {ymin} {borne inférieure sur l'axe $Oy$} {$-5$} \Longref {} {ymax} {borne supérieure sur l'axe $Oy$} {$5$} \endsyntaxe