giovedì 19 dicembre 2013

Guida a Jgraph programma che serve a tracciare grafici e diagrammistrutturati: introduzione e alcuni dettagli.

Jgraph è un programma che serve a tracciare grafici e diagrammi strutturati.
Diversamente da altri strumenti per il disegno, Jgraph è un programma non interattivo: legge un file di input (il sorgente) e produce un file di output (la presentazione) in formato PostScript oppure EPS.
L'output può in seguito essere quindi visualizzato, stampato, incorporato in un altro file per ulteriori elaborazioni oppure convertito in altri formati.
Inoltre, si noti che Alml (il sistema di composizione SGML di Daniele Giacomini) offre supporto - a partire da gennaio 2006 - per il linguaggio Jgraph.
Questo capitolo costituisce una introduzione di livello elementare all'uso e alle caratteristiche principali del programma, senza alcuna prestesa di essere esauriente.
La documentazione di riferimento più completa per Jgraph è costituita dalla pagina di manuale, cui si rinvia il lettore interessato per gli eventuali approfondimenti.
jgraph diagram-JGraph
Ecco l'utilizzo tipico di Jgraph:
$ jgraph in.jgr > out.eps[Invio]
oppure:
$ jgraph -P in.jgr > out.ps[Invio]
o, ancora:
$ cat in.jgr | jgraph -P | ps2eps -f -l -q > out.eps[Invio]
e simili.
In assenza di un nome di file dato come argomento, Jgraph legge dallo standard input.
Esempi elementari.
Al fine di prendere confidenza con il programma Jgraph, cominciamo vedere alcuni semplici esempi. Per indicare a Jgraph di tracciare un nuovo grafico o diagramma si utilizza la parola chiave newgraph; quindi si aggiungono delle curve al diagramma mediante newcurve; infine si aggiungono dei punti alla curva mediante pts.
Il listato 6.1 mostra un esempio elementare, presentato graficamente in figura 6.2. Si tratta semplicemente di disegnare tre punti: (2,3), (4,5) e (1,6). Jgraph si occupa di aggiungere gli assi di riferimento e di scegliere lo stile di tracciamento dei punti; è un esempio decisamente banale, tanto per iniziare.
Jgraph: un esempio elementare.
(* Simple jgraph *)

newgraph

newcurve pts 2 3   4 5   1 6


Figura 6.2.


f-simp1-jgr


Si considerino adesso il listato 6.3 e la corrispondente figura 6.4. Si tratta di un esempio leggermente più complesso: nelle righe 1-3 si dà inizio al grafico mediante newgraph, quindi si definiscono le dimensioni degli assi;(2) le righe 5-9 tracciano tre curve: nella prima si lascia che sia Jgraph a scegliere lo stile di tracciamento, nella seconda si specifica di indicare i punti mediante triangoli connessi da una linea solida, nella terza si specifica di non indicare i punti ma di tracciare solamente la linea che li unisce (la linea sarà tratteggiata e di colore rosso(3)). Si noti che l'intervallo visibile degli assi è stato automaticamente calcolato in modo da contenere precisamente tutti i punti specificati nel sorgente.


Nella pagina di manuale si trovano definiti i possibili stili da associare allle parole chiave marktype e linetype. Si noti in particolare che newline è semplicemente un sinonimo per newcurve marktype none linetype solid.


Jgraph: un grafico con tre curve di tipo differente.



      1 newgraph
      2 xaxis size 2 
      3 yaxis size 1.5 
      4 
      5 newcurve pts 0 6  1 9  2 11  3 14  4 18 5 20
      6 newcurve marktype triangle linetype solid 
      7          pts 0 3  1 4  2 7  3 9  4 10 5 13
      8 newcurve marktype none linetype dashed color 1 0 0
      9          pts 0 0  1 2  2 3  3 5  4 6  5 9



Figura 6.4.


f-simp2-jgr


Alcuni dettagli sulla sintassi.


L'algoritmo di riconoscimento dell'input da parte di Jgraph è basato non sulle righe bensì sugli elementi sintattici (token-based); Jgraph semplicemente lavora su parole separate da spazi bianchi; i commenti devono essere inclusi fra (* e *). Gli oggetti fondamentali per Jgraph sono:




  • la pagina;




  • i grafici;




  • gli assi;




  • le curve;




  • le stringhe;




  • le legende.



Si può pensare che, quando si opera sul sorgente, si stanno effettivamente creando o modificando tali oggetti nella presentazione. Pertanto, quando si scrive newcurve, si sta in effetti modificando o creando una curva, per la quale è possibile specificare attributi, come marktype e linetype, e dei punti. La maggior parte degli attributi possiedono un valore predefinito che però è possibile cambiare. Se si specifica un attributo più di una volta Jgraph considera valida l'ultima indicazione, sicché ad esempio newcurve marktype box marktype circle equivale a newcurve marktype circle.


In parziale deroga a quanto or ora specificato, la parola chiave pts agisce in maniera «additiva», pertanto newcurve pts 0 0 1 1 2 2 equivale a newcurve pts 0 0 pts 1 1 pts 2 2.


È inoltre possibile includere dei file esterni nel sorgente Jgraph mediante include nome_file.


Gestione degli assi.


Se capita di non gradire la maniera in cui Jgraph produce automaticamente gli assi, può tornare utile la tabella 6.5.


Tabella 6.5. Jgraph: alcuni attributi degli assi.


Attributo ed eventuali valori

Significato


size


dimensione


Imposta la dimensione dell'asse a dimensione (in pollici).


min valore


Imposta il valore minimo a valore.


max valore


Imposta il valore massimo a valore.


hash numero_valori


Traccia una tacca (primaria) e un'etichetta di tacca ogni numero_valori valori.


mhash numero_tacche


Traccia numero_tacche tacche secondarie fra ogni due tacche primarie consecutive.


gray scala_di_grigio


Imposta la scala di grigio dell'asse a scala_di_grigio, ove zero significa nero e uno significa bianco.


color componente_rossa \


  \ componente_verde \


  \
componente_azzurra






Imposta il colore dell'asse, codificato mediante la terna RGB indicata.


nodraw


Impedisce il tracciamento dell'asse, in ogni sua parte.



draw



Garantisce il tracciamento dell'asse, in ogni sua parte. 



log



Imposta la scala dell'asse come logaritmica. 



linear



Imposta la scala dell'asse come lineare. 



no_draw_hash_marks



Impedisce il tracciamento delle tacche lungo l'asse. 



no_draw_hash_labels



Impedisce il tracciamento delle etichette lungo l'asse. 



draw_at valore



Traccia l'asse in una posizione diversa dal valore minimo. 



label etichetta



Imposta l'etichetta dell'asse. 


Uso di alcuni degli attributi degli assi.


newgraph




xaxis


  size 6


  min 0 max 100


  hash 15 mhash 2 (* i.e. minor hashes at the 5's and 10's *)


  color 1 0 0


  label : This is the X axis


  draw_at 10





yaxis


  size 3


  min 1 max 1000


  log


  no_draw_hash_marks


  label : And this is the Y axis


  color 0 1 1





newline color 1 0 1


  pts 10 1


      20 5


      30 10


      40 20


      50 100


      60 110


      70 500


      80 800


      90 1000


      100 1







f-axis-jgr


 



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



Fonte: http://nelregnodiubuntu.blogspot.com/2013/09/guida-jgraph-programma-che-serve.html

Nessun commento:

Posta un commento

Ogni opinione espressa in questi commenti è unicamente quella del suo autore, identificato tramite nickname e di cui si assume ogni responsabilità civile, penale e amministrativa derivante dalla pubblicazione del materiale inviato. L'utente, inviando un commento, dichiara e garantisce di tenere INFORMARMY.com manlevato ed indenne da ogni eventuale effetto pregiudizievole e/o azione che dovesse essere promossa da terzi con riferimento al materiale divulgato e/o pubblicato.
INFORMARMY.com modera i commenti non entrando nel merito del contenuto ma solo per evitare la pubblicazione di messaggi volgari, blasfemi, violenti, razzisti, spam, etc.

LinkWithin

Related Posts Plugin for WordPress, Blogger...