Εισαγωγή στο Gnuplot. Σφυράκης Χρυσοβαλάντης

Σχετικά έγγραφα
Εργαστήριο Μαθηματικής Ανάλυσης Ι. Εισαγωγή στη Matlab Βασικές Συναρτήσεις-Γραφικές παραστάσεις. Πανεπιστήμιο Θεσσαλίας. Σχολή Θετικών Επιστημών

Εισαγωγή στην Αριθμητική Ανάλυση

Ενότητα 3 (μέρος 1 ο )

ΑΡΙΘΜΗΤΙΚΕΣ ΜΕΘΟΔΟΙ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Μεθόδων Επίλυσης Προβλημάτων

ΦΥΣ 145 Λύσεις Ενδιάμεσης Εξέτασης Χ. Παναγόπουλος 12/3/2015

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. ( ιάλεξη 13) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Βασικά στοιχεία στο Matlab

Άσκηση 1. Α. Υπολογίστε χωρίς να εκτελέσετε κώδικα FORTRAN τα παρακάτω: Ποιά είναι η τελική τιμή του Z στα παρακάτω κομμάτια κώδικα FORTRAN:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ

Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων.

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα "Αλφαριθμητικά"

Εισαγωγή στο Πρόγραμμα Maxima

Ηλεκτρονικοί Υπολογιστές I

Κεφάλαιο 7: Υπορουτίνες

Συστήματα Αναμονής (Queuing Systems)

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου

4. Εισαγωγή στο Matlab

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό

Εργαστήριο 9: Αρχεία

Εισαγωγή στη Matlab Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής

8 FORTRAN 77/90/95/2003

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 14

Παρουσίαση του Mathematica

ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 5

Αλληλεπίδραση με το Matlab

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)

Υπολογισμός - Εντολές Επανάληψης

ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB. Κολοβού Αθανασία Ε.Τ.Ε.Π.

Προγραμματισμός Η/Υ (ΤΛ2007 )

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

5 η ΕΝΟΤΗΤΑ Γραφήματα στο MATLAB

Πρώτη επαφή με το μαθηματικό πακέτο Mathematica

Δομημένος Προγραμματισμός (ΤΛ1006)

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 17

ΚΕΦΑΛΑΙΟ 2. Περιγραφή της Κίνησης. 2.1 Κίνηση στο Επίπεδο

Για τη δημιουργία ενός διανύσματος με στοιχεία από το 0 μέχρι το 20 με βήμα το 2 (χρησιμοποιείται συνήθως για διανύσματα χρόνου) δίνουμε

Προγραμματισμός με FORTRAN Συνοπτικός Οδηγός Α. Σπυρόπουλος Α. Μπουντουβής

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα;

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τι χρειάζεται η εντολή DO ; ΕΠΑΝΑΛΗΨΕΙΣ ΕΝΤΟΛΗ DO. Όταν απαιτείται να εκτελεστεί πολλές φορές το ίδιο τμήμα ενός προγράμματος.

Διάλεξη 18η: Διαχείρηση Αρχείων

Εργαστήριο Γραμμικής Άλγεβρας. H Matlab ως γλώσσα προγραμματισμού

Έναρξη Τερματισμός του MatLab

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.

Τμήμα Φυσικής Πανεπιστημίου Κύπρου Εαρινό Εξάμηνο 2015/2016. ΦΥΣ145 Υπολογιστικές Μέθοδοι στην Φυσική

Προγραμματισμός Η/Υ (ΤΛ2007 )

ΑΡ Χ Ε Ι Α Κ Ε Ι Μ Ε Ν Ο Υ (text files)

Η γλώσσα προγραμματισμού C

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Γραφικές παραστάσεις (1ο μέρος)

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

ΕΠΕΞΕΡΓΑΣΙΑ ΑΡΧΕΙΩΝ Λέµε αρχείο

Προγραμματισμός Η/Υ (ΤΛ2007 )

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 8 η : Συναρτήσεις Χειµερινό Εξάµηνο 2011

ΑΡΧΕΙΑ ΚΕΙΜΕΝΟΥ ΣΤΗΝ C

ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΜΕ ΕXCEL

ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ

Γραφικές παραστάσεις (2ο μέρος)

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Η/Υ (ΤΛ2007 )

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

ΕΞΕΤΑΣΕΙΣ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΜΕ ΕΦΑΡΜΟΓΕΣ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΟΥ ΜΗΧΑΝΙΚΟΥ

ΕΛΛΗΝΙΚΗ ΕΤΑΙΡΕΙΑ ΕΠΙΣΤΗΜΟΝΩΝ ΚΑΙ ΕΠΑΓΓΕΛΜΑΤΙΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΜΕΛΟΣ IFIP, IOI Org. GREEK COMPUTER SOCIETY MEMBER OF IFIP, IOI Org.

Προγραμματισμός Ι. Προεπεξεργαστής. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

SPSS Statistical Package for the Social Sciences

Εισαγωγή στον Προγραμματισμό (με. τη C)

Μεθόδων Επίλυσης Προβλημάτων

Κεφάλαιο : Επαναλήψεις (oι βρόγχοιfor, do-while) (Διάλεξη 10) Εντολές Επανάληψης που θα καλυφθούν σήμερα

ΣΥΝΑΡΤΗΣΕΙΣ (Functions)

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Περιεχόμενα. 26 Γραφικά δύο διαστάσεων Γραφικά τριών διαστάσεων... 45

ΦΥΣ 145 Υπολογιστικές Μέθοδοι στη Φυσική. Πρόοδος 26 Μαρτίου 2007 Ομάδα 1 η

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Δομημένος Προγραμματισμός

Προγραμματισμό για ΗΜΥ

ΦΥΣ 145 Μαθηµατικές Μέθοδοι στη Φυσική. Πρόοδος 20 Μαρτίου 2011 Οµάδα

C: Από τη Θεωρία στην Εφαρμογή

Εισαγωγή στην πληροφορική

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Υπο-προγράμματα στη Fortran

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Ενότητα 1 Διάλεξη 3. Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού. Σιέττος Κωνσταντίνος

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

Πίνακες. 1 Πίνακες. 30 Μαρτίου 2014

Ανάπτυξη και Σχεδίαση Λογισμικού

ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013

Κεφάλαιο 4: Συνθήκες Έλεγχου (if-else, switch) και Λογικοί τελεστές / παραστάσεις. (Διάλεξη 8)

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

Κεφάλαιο Πίνακες Ι. (Διάλεξη 16)

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ιαφάνειες παρουσίασης #7

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ

Προγραμματισμός Η/Υ (ΤΛ2007 )

Χρονικές σειρές 9 o μάθημα: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΤΗ MATLAB (3) ΓΡΑΦΗΜΑΤΑ

Transcript:

Εισαγωγή στο Gnuplot Σφυράκης Χρυσοβαλάντης

Περιεχόμενα Εισαγωγή... 3 Εντολές του Gnuplot... 3 Έξοδος του γραφήματος... 3 Καθορισμός των χαρακτηριστικών του γραφήματος... 4 Συναρτήσεις Αρχεία Δεδομένων... 5 Καθορισμός του Στυλ... 7 Παραδείγματα... 8 Προκαθορισμένες συναρτήσεις του gnuplot... 12

Εισαγωγή Το gnuplot είναι ένα πακέτο για την δημιουργία γραφικών. Έχει τη δυνατότητα να αναπαριστάνει διδιάστατες αλλά και τριδιάστατες γραφικές παραστάσεις. Το gnuplot είναι μέσα στα στάνταρ πακέτα του Unix, όμως τα τελευταία χρόνια έχει δημιουργηθεί και μια έκδοσή του για τα Windows- Dos. Στο Unix το τρέχουμε μέσα από xterm (συνήθως) γράφοντας gnuplot, οπότε μας εμφανίζει στη γραμμή εντολών του: gnuplot> Αντίστοιχα και για Windows 95 ή ΝΤ, πατώντας πάνω στο εικονίδιο Αυτό που θα δούμε είναι Εντολές του Gnuplot Μια από τις σημαντικότερες εντολές στο gnuplot είναι η help. Αυτή μας βοηθάει να βρίσκουμε πληροφορίες για άλλες εντολές. Έξοδος του γραφήματος (χρειάζεται περισσότερο σε αυτούς που χρησιμοποιούν Unix) set term regis: για vt graphics τερματικό (vt125,vt240,vt330, ) set term dumb: για κοινό τερματικό (vt320,vt420, ) (όχι καλό αποτέλεσμα) Ακόμα όταν θέλουμε να βγάλουμε σε postscript (αυτό ισχύει και στα Windows 95) δηλαδή να αποθηκεύσουμε τη δουλεία μας σε.ps, (αυτό βοηθάει και στην εκτύπωση) χρησιμοποιούμε την παρακάτω σειρά εντολών:

set term postscript set output onoma.ps..εντολές σχεδίασης. Επίσης έχουμε τη δυνατότητα να αποθηκεύσουμε σε Latex με τις εντολές: set term latex set output onoma.tex..εντολές σχεδίασης. Καθορισμός των χαρακτηριστικών του γραφήματος Σε ένα γράφημα μπορείτε να καθορίσετε ορισμένα χαρακτηριστικά όπως ονόματα αξόνων (labels), όρια τιμών μεταβλητών (x, y, z range), υποδιαιρέσεις (tickmarks) κ.α. Τα παραπάνω στοιχεία καθορίζονται μεσώ της εντολής set. Αν δεν το έχετε καθορίσει, τότε το πρόγραμμα τα καθορίζει μόνο του μέσω κάποιων default (προκαθορισμένων) τιμών. set autoscale : Το πρόγραμμα επιλέγει μόνο του τα όρια χρησιμοποιώντας default τιμές. Η εντολή αυτή αναιρείται με την εντολή : set noautoscale. set xrange [a:b] : καθορίζει τα όρια (range) του x - άξονα (a,b: πάνω και κάτω όριο αντίστοιχα) set yrange [a:b] : καθορίζει τα όρια (range) του y - άξονα (a,b: πάνω και κάτω όριο αντίστοιχα) set zrange [a:b] : καθορίζει τα όρια (range) του z - άξονα (a,b: πάνω και κάτω όριο αντίστοιχα) set xtics : με τον όρο tics ονομάζουμε τις υποδιαιρέσεις του κάθε άξονα και τους αριθμούς που μπαίνουν κάτω από την κάθε υποδιαίρεση. Σύνταξη set xtics [a,h,b] καθορίζει τα όρια και το βήμα στον x - άξονα (a,b πάνω και κάτω όριο αντίστοιχα και h το βήμα). Αντίστοιχα set ytics [a,h,b], set ztics [a,h,b]. Ακόμα set xtics ('a' 0, 'b' 10, ' ' 20) σημαίνει να μπουν συνολικά 3 υποδιαιρέσεις, στα σημεία 0, 10 κα 20, με το χαρακτήρα a κάτω από το 0, το χαρακτήρα b κάτω από το 10 και τίποτα κάτω από το 20. set xlabel x-onoma : τοποθετεί όνομα (label) στον x-άξονα (όμοια y,z). set title titlos : δίνει ένα γενικό τίτλο στο γράφημα. Άλλες εντολές set που συναντάμε είναι: set label π.χ. set label 1 onoma at 1,3 right

set nolabel 1 set (no)xzeroaxis set (no)zeroaxis set (no)grid set (no)key set size set (no)logscale Η εντολή plot-splot Η εντολή plot παράγει το γράφημα. Η σύνταξη της εντολής είναι: plot {όρια} {<συναρτηση1>} ή {"<αρχειο1>" {αρχειο2...} {τίτλος} {στυλ} τα όρια τα θέτουμε με [μτβ1=a1:b1] για όσες μεταβλητές έχουμε (το πολύ 2). Αν θέλουμε να καθορίσουμε και στον άλλο άξονα τις διαστάσεις (στον y για διδιάστατα και στον z για τριδιάστατα) γράφουμε [a:b] Παραδείγματα plot [x=0:2] [-3:1] x**2*sin(x)-3 splot [x=0:2] [y=-3:1] [-1:1] x**2*sin(x)-3*y Συναρτήσεις Αρχεία Δεδομένων Ήδη έχουμε δει πως γράφουμε συναρτήσεις δυο και τριών μεταβλητών, π.χ. x**2*sin(x)-3 και η x**2*sin(x)-3*y. Γι αυτό θα εστιάσουμε την προσοχή μας στην δημιουργία γραφημάτων από αρχεία τιμών. Για διδιάστατα γραφικά το αρχείο θα πρέπει να έχει δυο στήλες η μια του x και η άλλη του f(x). Αντίστοιχα, για τριδιάστατα, μια του x, μια του y και μια με την f(x,y). Παρακάτω δίνουμε ένα πρόγραμμα κατασκευής ενός αρχείου data2d.dat που έχει δυο στήλες η μια του x και η άλλη του f(x). Το πρόγραμμα είναι γραμμένο και σε Fortran και σε C. Π.χ Το αρχείο data2d.dat προέρχεται από το παρακάτω πρόγραμμα Fortran

PROGRAM synartiseis G(x)=x**2+3*x+1 REAL x,h,tmp INTEGER I h= 2./100. OPEN(1, data2d.dat ) DO 10, i=0,100 x=h*i tmp=f(x)*g(x) WRITE(1,12) x,, tmp 10 CONTINUE CLOSE(1) 12 FORMAT(F8.3,A,F8.3) END REAL FUNCTION F(x) IF((0.LE.x).AND.(x.LE.1)) THEN F(x)=x*COS(x) ELSE IF((1.LT.x).AND.(x.LE.2)) THEN F(x)=x*SIN(x) RETURN END Π.χ Το αρχείο data2d.dat προέρχεται από το παρακάτω πρόγραμμα C #include <stdio.h> #include <math.h> float G(float); float F(float); main() { float x, h; int i; FILE *fp;

if ((fp = fopen("data2d.dat", "w")) == NULL) exit(1); } h = 2.0/100.0; for (i=0; i<=100; i++) { x = h*i; fprintf(fp, "%8.3f %8.3f\n", x, F(x)*G(x)); } fclose(fp); float G(float x) { return x*x + 3*x + 1; } float F(float x) { if (x >= 0 && x <= 1) return x * cos(x); else if (x>=1 && x<=2) return x*sin(x); } Το γράφημα γίνεται με την εντολή plot data2d.dat Αντίστοιχα θα μπορούσαμε να καθορίσουμε όρια και να βάλουμε και περισσότερα από ένα αρχεία. (Εδώ δεν είναι απαραίτητο να βάζουμε και το όνομα της μεταβλητής όταν καθορίζουμε τα όρια). Όμοια και για αρχεία με τρεις στήλες, με την splot θα έχουμε το γράφημα τους. Καθορισμός του Στυλ Στο gnuplot μπορούμε να δίνουμε τίτλο σε κάθε μια συνάρτηση π.χ. plot x title test, x**2 title x^2 ή για συντομία plot x t test, x**2 t x^2 Στη συνέχεια θα ασχοληθούμε με την παράμετρο with της plot (splot)

with line n: με n=1,2 καθορίζουμε το χρώμα που θα έχει η γραμμή μας with dots: το γράφημα γίνεται με τελείες συνεχείς. with points: με διακριτά σημεία. with lines : ενώνει τα σημεία με γραμμές with linespoints ενώνει τα σημεία με γραμμές και τονίζει τα σημεία. Ακόμα μπορούμε να έχουμε impulses, errorbars, steps, boxes ή boxerrorbars Παραδείγματα plot x**2 t x^2 with dots plot data2d.dat with linespoints plot [-1:1] [-2:2] x with boxes Replot Συχνά έχουμε ήδη κάτι σχεδιάσει σε ένα γράφημα και θέλουμε να προσθέσουμε και κάτι άλλο. Τότε χρησιμοποιούμε την replot. Η replot έχει αντίστοιχες παραμέτρους με την plot εκτός από τα όρια που τα παίρνει από την plot. Παραδείγματα plot [0:2*pi] sin(x) replot cos(x) set term postscript set output graf.ps set xrange [0:10] set yrange [-1:1] set xlabel x-axis set ylabel y-axis set title EXAMPLE set xtics ( 0,0, pi,pi, 2pi,2*pi) set label 1 cosine at 5,0.6 right set label 2 sine at 5,0.6 right c=-0.5 plot cos(x) with dots, sin(x) with lines 1, tan(x),c*x

Το αποτέλεσμα έχει σωθεί στο postscript αρχείο graf.ps και μπορείτε να το τυπώσετε ή να το δείτε με το Ghostview. set xrange [-3:3] set yrange [-3:3] set xlabel x-axis set ylabel y-axis set zlabel z-axis set title EXAMPLE splot [x=-3:3] [y=-3:3] (sin(x**2+y**2)) /(x**2+y**2) splot [x=-3:3] [y=-3:3] (sin(x**2+y**2)) /(x**2+y**2) with linespoints splot [0:3] [0:3] (sin(x*y))/(x**2+y**2) splot [-3:3] [-3:3] (x**2+3*y**2)*exp(1-x**2-y**2)

Προκαθορισμένες συναρτήσεις του gnuplot