Guida a JGraph, programma per tracciare grafici e diagrammi strutturati: stringhe, etichette e legende.

La gestione delle stringhe in Jgraph avviene mediante la parola chiave newstring. Gli attributi delle stringhe sono la posizione, la fonte, la dimensione della fonte, il colore, la rotazione, l'allineamento e il testo. La posizione si imposta mediante posizione_x y posizione_y. La fonte dev'assere una fonte PostScript.

Le fonti standard sono Times-RomanTimes-Italic,Times-BoldHelveticaHelvetica-ItalicHelvetica-BoldCourier e Symbol. Il colore viene indicato tramite lcolor, oppure si utilizza lgray per indicare la scala di grigio. Gli allineamenti si specificano come segue:
  • hjlhjr e hjc corrispondono a sinistra, destra e centro (orizzontale) rispettivamente;
  • vjtvjb e vjc corrispondono a sopra, sotto e centro (verticale) rispettivamente.
Si può ruotare una stringa mediante rotate gradi. Si imposta il testo di una stringa mediante il carattere :, seguito da uno spazio bianco e quindi dal testo vero e proprio. Per ottenere del testo su più righe è possibile utlizzare il carattere \ al termine di ciascuna riga tranne l'ultima.

Anche le etichette dei grafici sono stringhe, quindi possono utilizzare gli attributi or ora descritti.
copystring copia tutti gli attributi di una stringa (testo incluso).


Il listato 6.10 e la figura 6.11 illustrano un esempio.

Listato 6.10. Jgraph: gestione delle stringhe.
newgraph
  xaxis min 0 max 10 hash 1 mhash 0 size 7
  yaxis min 0 max 10 hash 1 mhash 0 size 4

newstring hjl vjc x 1 y 1 : String #1

newstring hjr vjt x 9 y 1 fontsize 20 lcolor 1 0 0 : String #2

copystring hjl vjb x 1 y 2 fontsize 16 font Times-Italic : String #3

newstring hjr vjt x 9 y 2 fontsize 16 font Helvetica : String #4

newstring hjc vjc x 5 y 2 fontsize 16 font Symbol : String #5

newstring hjl vjb fontsize 45 font Courier rotate 90 x 5 y 5 : String #6
Figura 6.11.
f-strings-jgr

Legende.
È possibile applicare un'etichetta a una curva mediante l'attributo label: esso indica a Jgraph di creare una voce in legenda per la curva data. Il listato 6.12 e la figura 6.13 forniscono un esempio.

Listato 6.12. Jgraph: esempio di legenda.
newgraph
xaxis min 0 max 5 
yaxis min 0 nodraw

newcurve marktype box linetype solid label : Line number one
   pts 0 6  1 9  2 11  3 14  4 18 5 20
newcurve marktype triangle linetype dashed color 1 0 0 label : Line number two
   pts 0 3  1 4  2 7  3 9  4 10 5 13
newcurve marktype none linetype dotdotdash color 1 0 1 label : And number three
         pts 0 0  1 2  2 3  3 5  4 6  5 9
Figura 6.13.
f-legend1-jgr

Si possono cambiare la fonte e la posizione della legenda, come unità complessiva, scrivendo legend defaults e specificando gli attributi per le stringhe: in tal modo si modificano tutte le stringhe della legenda. Il listato 6.14 e la figura 6.15 forniscono un esempio; è istruttivo provare a modificarlo e vedere quali effetti ne sortiscano. Le legende hanno altre interessanti caratteristiche, che si trovano ben descritte nella pagina di manuale.

Listato 6.14. Jgraph: un altro esempio di legenda.
newgraph
xaxis min 0 max 5 
yaxis min 0 nodraw

newcurve marktype box linetype solid label : Line number one
   pts 0 6  1 9  2 11  3 14  4 18 5 20
newcurve marktype triangle linetype dashed color 1 0 0 label : Line number two
   pts 0 3  1 4  2 7  3 9  4 10 5 13
newcurve marktype none linetype dotdotdash color 1 0 1 label : And number three
         pts 0 0  1 2  2 3  3 5  4 6  5 9

legend defaults font Times-Italic fontsize 20 rotate 30 hjl vjt x 6 y 0
Figura 6.15.
f-legend2-jgr

Se ti è piaciuto l'articolo , iscriviti al feed cliccando sull'immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:

reeder
Luca Soraci

Luca Soraci

Ubuntu giunge alle nostre orecchie solo perché è stato mutuato come nome per un sistema operativo di successo; lo abbiamo sentito nei discorsi di Mandela, del vescovo Tutu, ed è uno dei concetti fondanti di quel movimento di rinascimento che vuole far fiorire il continente africano al di sopra delle difficoltà attuali.

Nessun commento:

Posta un commento

Powered by Blogger.