Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
versione 1
Roberto Boggiani
7 febbraio 2003
1 Introduzione
1.1 Presentazione
Gnuplot è un programma per produrre grafici a due e tre dimensioni. Esso permetti di formattare
tali grafici in una varietà di modi e di esportarli in formati facilmente importabili in documenti
LATEX.
1
2 Specificazione delle funzioni
• π è denotato con pi
• per tracciare grafici in tre dimensioni le varibili indipendenti saranno sempre x,y
• f(x)=1/x
• f(x,y)=x**2+y**2
• g(x,y)=sin(x)-cos(y)
2
2 Specificazione delle funzioni
Cosı̀ facendo possiamo ottenere funzioni diverse al variare dei parametri in essa inserita come
ad esempio
f(x,1,6)
f(x,1,1)
e questo fatto ci permette di ottenere grafici in modo più veloce.
• - operatore meno: -a
• + operatore più: +a
• ~ operatore complemento: a
• ! operatore negazione: !a
• ! operatore fattoriale a!
3
3 I grafici delle funzioni a due dimensioni
• || operatore OR
• grafici cartesiani
• grafici parametrici
• grafici polari
4
3 I grafici delle funzioni a due dimensioni
3 cos(2t)
5
4 I grafici delle funzioni a tre dimensioni
• grafici cartesiani
• grafici parametrici
6
4 I grafici delle funzioni a tre dimensioni
set hidden3d
replot
per annullare l’effetto possiano utilizzare l’opzione:
set nohidden3d
replot
7
4 I grafici delle funzioni a tre dimensioni
• hidden3d
• isosamples
• contour
• cntrparam
8
5 Grafici di dati
5 Grafici di dati
5.1 Introduzione
Accade molte volte di avere a disposizione dei dati derivanti ad esempio da una analisi statistica
o da un esperimento e di dover predisporre un grafico di questi dati. Supporremmo che tali dati
siano memorizzati nel file dati.dat raggiungibile da gnuplot, in caso contrario nel richiamare
il file dovremmo specificare la directory in cui esso è memorizzato. Si noti che il file dati.dat
può essere composto da più colonne e il separatore di colonna deve essere tab.
9
6 Aspetti comuni
6 Aspetti comuni
6.1 Introduzione
In questo paragrafo vedremo una serie di comandi che potranno essere applicati a qualunque
tipo di grafico che vogliamo tracciare sia esso bidimensionale o tridimensionale. Si tratta di una
semplice elencazione di comandi accompagnata dalle principali opzioni circa il loro uso. Per un
aiuto completo di veda sempre l’help in linea richiamabile con il comando hep set nomecomando.
10
6 Aspetti comuni
plot f(x)
replot g(x)
in questo modo al primo grafico tracciato viene aggiunto anche quello che compare dopo il
comando replot.
• points
• linespoints
• impulses
• dots
• steps
• boxes
che sono di facile interpretazione.
• points
• linespoints
• impulses
che sono di vacile interpretazione.
11
6 Aspetti comuni
Può essere necessario in alcuni casi variare il nome predefinito di tali varibili e ciò è fatto tramite
la funzione dummy. Il suo utilizzo è il seguente:
12
6 Aspetti comuni
Analogo a tale comando è anche il comando x2label e y2label i quali operano nello stesso
modo d ixlabel e ylabel ma in questo caso le etichette sono scritte rispettivamente sopra e a
destra del grafico.
Per togliere le etichette precedentemente asegnate si usa:
set xlabel
set ylabel
set zlabel
13
6 Aspetti comuni
set ztics
è possibile ottenere dei tics non i nomi dei mesi o i giorni della settimana. Si veda a tal
proposito l’help in linea.
Si noti che se si specifica l’opzione che permette la visualizzazione della griglia nel grafico,
essa verrà tracciata in corrispondenza dei tics tracciati.
• a,b,c sono le coordinate in cui voglimo che l’etichetta sia inserita, se il grafico è bidimen-
sionale non deve essere specificato il valore di c
14
7 Grafici multipli
set
^
valid set options: [] = choose one, {} means optional
Per ogni opzione tramite help set nomecomndo è possibile ottinere l’help in linea completo del
comando.
7 Grafici multipli
7.1 Introduzione
In certi casi sarà necessario ottenere grafici multipli, ossia diagrammi con più grafici visualizzati
separatamente. Ciò può essere effettuato con il comando multiplo.
set multiplot
set size 0.5,0.5
set origin 0.5,0.5
set title ’Funzione potenza con esponente pari’
plot x**2,x**4,x**8
set size 0.5,0.5
set origin 0.3,0.6
set title ’ Funzione potenza con esponente dispari’
plot x**3,x**5,x**7,x**9
# tutte le opzioni spcifiche per ogni grafico devono essere date dopo set origin
#e prima di plot. Tutte le opzioni prima di multiplot valgono per tutti i grafici
15
8 Output dei grafici
8.2 I terminali
I terminali sono i device grafici utilizzati da gnuplot. Tramite i terminali riusciamo a visualizzare
il grafico su video o possiamo stamparlo su di un file in un formato desiderato. Il terminale
predefinito dal programam è x11 ossia il video. Per modificare il terminale usiamo il comando:
set terminal nometerminale
in cui nome terminale è il nome del terminale da utilizzare. Un elenco dei terminali utilizzabili
si ottiene con help set terminal.
16
8 Output dei grafici
set output“filenamse.eps“ per specificare il nome del file ove salvare il grafico
set terminal postscript eps per specificare il tipo di terminale da usare
replot per stampare su file il grafico ottenuto a video precedentemente
Il file cosı̀ ottenuto sarà importato in latex nel consueto modo.
17
9 Gli script
9 Gli script
9.1 Introduzione
Per creare dei grafici complessi dovremmo dare come vedremo una serie di opzioni relative agli
assi, ai titoli, al modo di visualizzare le linee. Dovremmo anche inserire legende o simboli
all’interno del grafico stesso. Queste operazioni se digitate da console di gnuplot restano perse e
non possono essere recuperate. E’ quindi necesario poter creare degli script, ossia una sequeza
di istruzioni, che possano essere memorizzate in un file di testo ed essere eseguite da gnuplot
tutte assieme con un semplice comando.
#Grafico di un integrale
set xrange [-1:3]
set yrange [-1:4]
set zeroaxis
set xlabel ’x’
set ylabel ’f(x)’
set nokey
set label 1 ’a’ at 0.5,-0.1
set label 2 ’b’ at 2.5,-0.1
set noxtics
set noytics
f(x)=x<0.5 ? 1/0 : x>2.5 ? 1/0 : -(x-1)**2 +(x-1)**3+1
plot f(x) with lines , f(x) with impulse
set terminal postscript enhanced
set output "c:/integrale.ps"
replot
• si tratta di una serie di istruzioni che avremmo potuto inserire direttamente in gnuplot
L’operazione successiva sarà quella di salvare questo script in un file ad esempio nomescript.plt.
18
Indice
Indice
1 Introduzione 1
1.1 Presentazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Come ottenere un aiuto su un comando . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Salvare un grafico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
5 Grafici di dati 9
5.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.2 Grafico di dati a due dimensioni . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.3 Grafico di dati a tre dimensioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
6 Aspetti comuni 10
6.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6.2 Unità di misura degli angoli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6.3 Usare la scala logaritmica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6.4 Inserire la griglia nel grafico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6.5 Ottenere più grafici sullo stesso diagramma . . . . . . . . . . . . . . . . . . . . . 10
6.6 Modificare lo stile dei grafici a due dimensioni . . . . . . . . . . . . . . . . . . . . 11
6.7 Modificare lo stile dei grafici a due dimensioni . . . . . . . . . . . . . . . . . . . . 11
19
Indice
7 Grafici multipli 15
7.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
7.2 Come ottenere grafici multipli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
9 Gli script 18
9.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
9.2 Creare uno script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
9.3 Eseguire uno script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
20