Μαρία Λουκά Εργαστήριο Matlab Γραφικές Παραστάσεις Τμήμα Πληροφορικής και Τηλεπικοινωνιών
2-d Γραφικές Παραστάσεις Γραφικές Παραστάσεις 2 Διαστάσεων Εντολή plot Οι γραφικές παραστάσεις 2 διαστάσεων ( στο επίπεδο ) γίνονται με την εντολή - συνάρτηση plot (Help: Matlab- >Functions Categorical List->Graphics->Basic Plots and Graphs>Plot). Η plot γενικά απαιτεί 2 ορίσματα, τα οποία πρέπει να είναι διανύσματα με τον ίδιο αριθμό στοιχείων και σχεδιάζει τη γραφική παράσταση που ορίζουν τα σημεία των 2 διανυσμάτων, όπως φαίνεται στο παράδειγμα που ακολουθεί : x = [-10:0.1:10]; y = sin(x); plot(x,y)
2-d Γραφικές Παραστάσεις Παρατηρήσεις Η συνάρτηση plot δέχεται σαν ορίσματα δύο διανύσματα και για το κάθε ζεύγος τιμών απεικονίζει στο επίπεδο το αντίστοιχο σημείο. Τα δύο διανύσματα πρέπει να έχουν τον ίδιο αριθμό στοιχείων. Εμφανίζει τους 2 άξονες και τις τιμές που έχουμε δώσει στα 2 διανύσματα. Εμφανίζει τη συνεχή καμπύλη του γραφήματος με μπλε χρώμα. Αν δεν κλείσουμε το γράφημα, μπορούμε να σχεδιάσουμε και κάποιο άλλο γράφημα πάνω στο υπάρχον.
Σύμβολα, Χρώματα και Γραμμές Στα γραφήματα μπορούμε να παρέμβουμε στα διάφορα χαρακτηριστικά της γραμμής, όπως : Το είδος της γραμμής Το χρώμα της γραμμής Το πάχος της γραμμής Τον τύπο της κουκίδας Το μέγεθος της κουκίδας Τα χρώματα της κουκίδας ( περίγραμμα και εσωτερικό ) συμπεριλαμβάνοντας στην εντολή plot ένα string, το οποίο περιέχει τους κωδικούς με τους οποίους επιλέγουμε τα παραπάνω χαρακτηριστικά.
Είδος Γραμμής Οι κωδικοί που καθορίζουν το είδος της γραμμής φαίνονται στον ακόλουθο πίνακα Πχ. Η plot(x,y) μπορεί να γραφτεί σαν plot(x,y, -- ) για να εμφανίζεται με διακεκομμένη γραμμή
Χρώμα Γραμμής Οι κωδικοί που καθορίζουν το χρώμα της γραμμής φαίνονται στον ακόλουθο πίνακα Κωδικός r g b c m y k w Χρώμα γραμμής κόκκινο πράσινο μπλε κυανό μωβ κίτρινο μαύρο άσπρο Πχ. Με την plot(x,y, r-- ) θα εμφανιστεί κόκκινη διακεκομμένη γραμμή
Παράδειγμα: x = [-10:0.1:10]; y = sin(x); %plot(x,y) plot(x,y,'r--')
Πάχος Γραμμής Για να αλλάξουμε το προκαθορισμένο πάχος της γραμμής του γραφήματος θα πρέπει στην εντολή plot να συμπεριλάβουμε και το string 'LineWidth' και μια τιμή μεταξύ του 0.5 και 30 για το αντίστοιχο πάχος της γραμμής. Αν, στο προηγούμενο παράδειγμα, θέλουμε η γραμμή να εμφανίζεται διακεκομμένη και κόκκινη και με πάχος γραμμής 3, θα πούμε: plot(x,y, r--, 'LineWidth', 3) ;
Τύπος Κουκίδας Για την επιλογή της κουκίδας που θα αναπαριστά τα σημεία του γραφήματος, θα πρέπει στο string να συμπεριληφθεί ένας κωδικός, απ αυτούς που παρουσιάζονται στον ακόλουθο πίνακα Κωδικός Τύπος κουκίδας + σύμβολο πρόσθεσης o κύκλος * αστερίσκος. σημείο x square or s diamond or d ^ v 'pentagram' or p 'hexagram' or h σταυρός τετράγωνο διαμάντι τρίγωνο με μύτη επάνω τρίγωνο με μύτη κάτω > τρίγωνο με μύτη προς τα δεξιά < τρίγωνο με μύτη προς τα αριστερά πεντάγραμμο εξάγραμμο
Αν, στο Παράδειγμα μας, θέλουμε η γραμμή να εμφανίζεται διακεκομμένη και κόκκινη και με αστεράκια, θα πούμε plot(x,y, r--* ) ; Μέγεθος Κουκίδας Για να αλλάξουμε το προκαθορισμένο μέγεθος της κουκίδας του γραφήματος θα πρέπει στην εντολή plot να συμπεριλάβουμε και το string 'MarkerSize' και μια τιμή μεταξύ του 0.5 και 30 για το αντίστοιχο μέγεθος της κουκίδας. Χρώμα Περιγράμματος Κουκίδας Για να αλλάξουμε το προκαθορισμένο χρώμα του περιγράμματος της κουκίδας του γραφήματος θα πρέπει στην εντολή plot να συμπεριλάβουμε και το string 'MarkerEdgeColor' και ένα ακόμη string με μια τιμή για το χρώμα, σύμφωνα με τον Πίνακα χρωμάτων
Χρώμα Γεμίσματος Κουκίδας Για να αλλάξουμε το προκαθορισμένο χρώμα του γεμίσματος της κουκίδας του γραφήματος θα πρέπει στην εντολή plot να συμπεριλάβουμε και το string 'MarkerFaceColor' και ένα ακόμη string με μια τιμή για το χρώμα, σύμφωνα με τον Πίνακα χρωμάτων Πχ. Αν, στο Παράδειγμα μας, θέλουμε η γραμμή να εμφανίζεται διακεκομμένη και κόκκινη και με κύκλους μεγέθους 14, με χρώμα περιγράμματος μπλε και χρώμα γεμίσματος κίτρινο, θα πούμε plot(x,y,'r--o', 'MarkerSize',14, 'MarkerFaceColor','y', 'MarkerEdgeColor','b' );
Τίτλος Γραφήματος Μπορούμε να βάλουμε στο γράφημα Τίτλο με την εντολή : title( 'Γράφημα Ημιτόνου','FontSize',14 ); Ονόματα Αξόνων Γραφήματος Αντίστοιχα, μπορούμε να βάλουμε στο γράφημα και ονομασίες για τους Άξονες x και y, επιλέγοντας γραμματοσειρά και μέγεθος γραμμάτων με τις εντολές : xlabel ( 'Άξονας x','fontname','courier New','FontSize',14); ylabel ( 'Άξονας y','fontname','courier New','FontSize',14);
Παρατήρηση Αν θέλουμε ο Τίτλος του Άξονα y να εμφανίζεται οριζόντια και όχι κάθετα, χρησιμοποιούμε το Rotation στην εντολή ylabel, όπως φαίνεται στο Γράφημα 7.9 : ylabel ( 'Άξονας y','fontname','courier New','FontSize',14, Rotation,0);
Η Εντολή hold on Η εντολή hold μας δίνει την δυνατότητα να σχεδιάσουμε πολλαπλά γραφήματα σε ένα figure. Η συνάρτηση hold καθορίζει το αν στην επόμενη φορά που θα εισάγουμε μία νέα γραφική παράσταση θα αντικαταστήσει την προηγούμενη ή θα σχεδιαστεί από πάνω. Όταν καλούμε την hold με το όρισμα on να την ακολουθεί τότε η γραφική παράσταση που έχουμε σχεδιάσει διατηρείται. Η δράση της hold on διαρκεί μέχρι να καλέσουμε την hold off. Τότε ότι έχουμε σχεδιάζει θα σβηστεί από την επόμενη γραφική παράσταση που θα σχεδιάσουμε. Αν π.χ. θέλουμε να σχεδιάσουμε και τη γραφική παράσταση του συνημιτόνου παράλληλα με τη γραφική παράσταση του ημιτόνου, θα πρέπει να χρησιμοποιήσουμε τις εντολές :
x = [-10:0.1:10]; y = sin(x); plot(x,y,'r--o', 'MarkerSize',6, 'MarkerFaceColor','y', 'MarkerEdgeColor','b' ); title( 'Γράφημα Ημιτόνου','FontSize',14 ); xlabel ( 'Άξονας x','fontname','courier New','FontSize',14); ylabel ( 'Άξονας y','fontname','courier New','FontSize',14, Rotation,0); hold on; y = cos(x); plot(x,y,'g:*', 'MarkerSize',6, 'MarkerFaceColor','k', 'MarkerEdgeColor','b' );
Παρατήρηση Αν θέλουμε να απενεργοποιήσουμε τη δυνατότητα να σχεδιάζουμε στο ίδιο γράφημα, θα πρέπει να χρησιμοποιήσουμε την εντολή hold off. Αφαίρεση Αξόνων από Γράφημα ( Εντολή axis off ) Αν θέλουμε να μην εμφανίζονται οι άξονες σε κάποιο γράφημα, χρησιμοποιούμε την εντολή axis off. Πχ. x = [-10:0.1:10]; y = sin(x); plot(x,y) axis off
Όταν έχουμε πολλαπλά γραφήματα στους ίδιους άξονες, είναι καλή ιδέα να βάζουμε λεζάντα που να επεξηγεί ποια καμπύλη αντιστοιχεί σε ποια συνάρτηση. Η εντολή legend κάνει αυτή τη δουλειά. legend('cos(x)','sin(x)') Παρατηρήσεις: Η σειρά με την οποία γράφουμε το κείμενο της λεζάντας πρέπει να είναι η ίδια με αυτή που ακολουθήσαμε στο γράφημα. Αν θέλουμε να τυπώσουμε το γράφημα το κάνουμε χρησιμοποιώντας το μενού εντολών που βρίσκεται στο παράθυρο του γραφήματος. Μπορούμε ακόμα να μεταφέρουμε την εικόνα του γραφήματος (μέσω των μενού του παραθύρου του γραφήματος) στον αγαπημένο μας επεξεργαστή κειμένων, π.χ. Microsoft Word.
Παράδειγμα: x = [-10:0.1:10]; y = sin(x); z=cos(x); plot(x,y,'r',x,z,'b--'); legend('cos(x)', 'sin(x)')
Η Εντολή subplot Με την εντολή subplot μπορούμε στο ίδιο γράφημα να σχεδιάσουμε περισσότερα από ένα υπογραφήματα, δίνοντας κάθε φορά τη διάταξη που θα έχουν τα υπογραφήματα, δηλαδή πόσες γραμμές και πόσες στήλες, τα οποία μετά αριθμούνται διατρέχοντας το δισδιάστατο πίνακα κατά γραμμές, δηλαδή το πρώτο υπογράφημα στην 1η γραμμή 1η στήλη, το δεύτερο στην 1η γραμμή 2η στήλη κ.λ.π.. subplot(2,2,1); x=-3:0.1:3; y=exp(x); plot(x,y,'r:'); subplot(2,2,2); y=sin(x); plot(x,y,'b--'); subplot(2,2,3); y = x; plot(x,y,'g.'); Με τις παραπάνω εντολές γίνονται 2x2 υπογραφήματα, τα οποία αριθμούνται σαν 1 το (1,1), 2 το (1,2) και 3 το (2,1),
Αν στο προηγούμενο παράδειγμα θέλαμε στη θέση του 1ου και του 3ου υπογραφήματος να εμφανίζεται το πρώτο απ τα 3 γραφήματα και τα υπόλοιπα δύο στις θέσεις 2 και 4, τροποποιούμε τις προηγούμενες εντολές αριθμώντας το 1ο υπογράφημα σαν 1 και 3 μαζί, όπως φαίνεται στις εντολές που ακολουθούν : subplot(2,2,[1 3]); x=-3:0.1:3; y=exp(x); plot(x,y,'r:'); subplot(2,2,2); y=sin(x); plot(x,y,'b--'); subplot(2,2,4); y = x; plot(x,y,'g.'); Με τις παραπάνω εντολές το [1 3] στην πρώτη εντολή δηλώνει ότι το συγκεκριμένο subplot θα είναι στο χώρο του 1ου και 3ου plot, οπότε γίνονται 3 υπογραφήματα, τα οποία καλύπτουν το χώρο των τεσσάρων (2x2),
Η εντολή figure() Με την εντολή αυτή και πληκτρολογώντας έναν αριθμό μέσα στην παρένθεση μπορούμε να εμφανίσουμε διαγράμματα σε ξεχωριστά παράθυρα. Ο αριθμός μέσα στην παρένθεση αντιστοιχεί στο μετρητή του γραφήματος σε σχέση με το σύνολο των γραφημάτων, τα οποία εμφανίζονται σε διαφορετικά παράθυρα.
Άλλες εντολές για γραφήματα δίδονται στον πιο κάτω πίνακα. subplot Πολλαπλά γραφήματα στο ίδιο παράθυρο loglog Λογαριθμικό γράφημα semilogx Ημιλογαριθμικό γράφημα (άξονας των x) semilogy Ημιλογαριθμικό γράφημα (άξονας των y) surf Γράφημα επιφάνειας surfl Γράφημα επιφάνειας με φωτισμό mesh Γράφημα επιφάνειας με πλέγμα
Γραφικές παραστάσεις loglog: σχεδιάζει ένα γράφημα συνάρτησης με λογαριθμικές συντεταγμένες (log(y) με log(x)) t = 0.1 : 0.1 : 10; x = exp(2*t); y = exp(sin(t)); loglog(x,y); grid on;
Γραφικές παραστάσεις semilogx,semilogy: σχεδιάζει ένα γράφημα συνάρτησης με ημιλογαριθμικές συντεταγμένες (log(y) με x ή y με log(x)) t = 0.1 : 0.1 : 10; semilogy(t,exp(2*t)); grid on;
Οι εντολές ez Για γρήγορα γραφήματα μαθηματικών συναρτήσεων (στις 2- και 3- διαστάσεις), οι πιο κατάλληλες εντολές είναι οι εντολές ez. Για παράδειγμα, η εντολή ezplot('exp(x)') δίνει το γράφημα της συνάρτησης ex σε προεπιλεγμένο (από τη MATLAB) διάστημα τιμών για το x.
Η εντολή ezplot('exp(x)', -3, 3 ) δίνει το ίδιο γράφημα, αλλά αυτή τη φορά για τιμές του x στο διάστημα [ 3, 3].
Για να κατασκευάσουμε το γράφημα της πεπλεγμένης συνάρτησης 3 2 1 x y 5xy 0 για τιμές του x στο διάστημα [ 3, 3], γράφουμε 5 ezplot('x^3+y^2-5*x*y+1/5',[-3,3])
3-d γραφικές παραστάσεις Η εντολή plot3 Δημιουργεί τρισδιάστατα διανύσματα στο χώρο. Χρησιμοποιείται όπως και η plot με τη διαφορά ότι πρέπει να οριστεί ένα ακόμη διάνυσμα, έτσι ώστε να περιγραφεί η τρίτη συνιστώσα των σημείων. Η γενική της έκφραση της εντολής είναι η ακόλουθη: plot3 (xvalues, yvalues, zvalues, style option ) Παράδειγμα Έστω ότι το t παίρνει τιμές μεταξύ του 0 και του 10π. Έστω st και ct διανύσματα της ημιτονοειδούς και συνημιτονοειδούς συνάρτησης. Να σχεδιαστεί ένας 3-D έλικας. t = 0:pi/50:10*pi; st = sin(t); ct = cos(t); figure plot3(st,ct,t)
3-d γραφικές παραστάσεις
3-d γραφικές παραστάσεις Η Εντολή meshgrid Η συνάρτηση-εντολή meshgrid δημιουργεί Πίνακες που ορίζουν το πλέγμα των γραφημάτων. Η meshgrid μπορεί να χρησιμοποιηθεί μόνο για δισδιάστατο ή τρισδιάστατο καρτεσιανό χώρο. Παίρνει για ορίσματα δύο διανύσματα x, y και επιστρέφει δύο Πίνακες X, Y. Οι γραμμές του X είναι αντίγραφα του x και οι στήλες του Υ είναι αντίγραφα του y. Η επόμενη εντολή δίνει ένα παράδειγμα χρήσης της meshgrid. Παράδειγμα: [X,Y] = meshgrid(1:1:3, 4:1:7) X = 1 2 3 1 2 3 1 2 3 1 2 3 Y = 4 4 4 5 5 5 6 6 6 7 7 7
3-d γραφικές παραστάσεις Η συνάρτηση mesh σχεδιάζει την γραφική παράσταση μιας επιφάνειας. Παίρνει τρία ορίσματα, δύο Πίνακες που περιέχουν τις συντεταγμένες του οριζόντιου επιπέδου και ένα τρίτο Πίνακα που περιέχει τις συντεταγμένες της επιφάνειας στην τρίτη διάσταση. [X,Y] = meshgrid(-5:0.1:5, -5:0.1:5); Z = exp(-(x.^2 + Y.^2)/2); mesh(x,y,z);
3-d γραφικές παραστάσεις Η συνάρτηση contour σχεδιάζει διαγράμματα ισοϋψών καμπυλών. Αν στο προηγούμενο παράδειγμα χρησιμοποιήσουμε την εντολή contour αντί της mesh, θα πάρουμε [X,Y] = meshgrid(-5:0.1:5, -5:0.1:5); Z = exp(-(x.^2 + Y.^2)/2); contour(x,y,z);
3-d γραφικές παραστάσεις Η meshc είναι απλά ο συνδυασμός της mesh με την contour. Το προηγούμενο παράδειγμα με τη χρήση της meshc θα έχει σαν αποτέλεσμα να δημιουργηθεί το γράφημα 7.23. [X,Y] = meshgrid(-5:0.1:5, -5:0.1:5); Z = exp(-(x.^2 + Y.^2)/2); meshc(x,y,z);
3-d γραφικές παραστάσεις Αν τώρα χρησιμοποιήσουμε την επιλογή Rotate 3D στο προηγούμενο Γράφημα, η βάση του γραφήματος θα είναι
3-d γραφικές παραστάσεις Η surf σχεδιάζει την γραφική παράσταση μιας επιφάνειας με την διαφορά ότι η επιφάνεια θα είναι σκιασμένη. Το προηγούμενο παράδειγμα με τη χρήση της surf θα έχει σαν αποτέλεσμα [X,Y] = meshgrid(-5:0.1:5, -5:0.1:5); Z = exp(-(x.^2 + Y.^2)/2); surf(x,y,z);
3-d γραφικές παραστάσεις [X,Y,Z] = peaks(25); figure surf(x,y,z);
3-d γραφικές παραστάσεις k = 5; n = 2^k-1; [x,y,z] = sphere(n); c = hadamard(2^k); figure surf(x,y,z,c); colormap([1 1 0; 0 1 1]) axis equal
3-d γραφικές παραστάσεις Surface: Create surface object [X,Y] = meshgrid(-2:0.2:2,-2:0.2:2); Z = X.*exp(-X.^2 - Y.^2); figure surface(x,y,z) view(3)
3-d γραφικές παραστάσεις [XD,YD,ZD] = peaks(25); load clown C = flipud(x); figure surface(xd,yd,zd,c,... 'FaceColor','texturemap',... 'EdgeColor','none',... 'CDataMapping','direct') colormap(map) view(-35,45)
3-d γραφικές παραστάσεις Οι εντολές ezsurf, esurfl, ezmesh, κ.λ.π. δουλεύουν με παρόμοιο τρόπο. Για παράδειγμα, με την εντολή ezsurf('cos(x)*cos(y)') έχουμε:
3-d γραφικές παραστάσεις Αυτό το οποίο χρειάζεται να αναλυθεί στην περίπτωση των τρισδιάστατων γραφημάτων είναι η γωνιά με την οποία θεωρείται ότι ένας παρατηρητής, εν προκειμένω ο χρήστης, παρατηρεί το διάγραμμα. Με άλλα λόγια, είναι απαραίτητο να αποσαφηνιστεί η κατεύθυνση, από την οποία ο παρατηρητής κοιτάζει το γράφημα. Η κατεύθυνση αυτή είναι η ευθεία, η οποία έχει ως αρχή το μάτι του παρατηρητή και καταλήγει στο κέντρο του συστήματος των συντεταγμένων. Την κατεύθυνση αυτή την ονομάζουμε οπτική κατεύθυνση. Η γωνία, την οποία σχηματίζει η προβολή της οπτικής κατεύθυνσης στο επίπεδο x-y με τον αρνητικό άξονα y καλείται ως αζιμούθιο (azimuth). Η γωνία, η οποία σχηματίζεται από την οπτική κατεύθυνση και την προβολή της στο επίπεδο x-y ονομάζεται ανύψωση (elevation). Η ανύψωση είναι θετική αν ο παρατηρητής βρίσκεται πάνω από το επίπεδο x-y και αρνητική αν είναι από κάτω. Το αζιμούθιο δηλώνει πόσες μοίρες πρέπει να στραφεί ο άξονας y για να συμπέσει με την προβολή της οπτικής κατεύθυνσης στο επίπεδο x-y. Αν η στροφή πραγματοποιηθεί με κατεύθυνση αντίθετη της φοράς των δεικτών του ωρολογίου, το αζιμούθιο είναι θετικό, διαφορετικό είναι αρνητικό. Τόσο η τιμή του αζιμούθιου όσο και της ανύψωσης προσδιορίζονται στο λογισμικό μέσω της παρακάτω συνάρτησης: view (azimuth, elevation) Οι εξ ορισμού τιμές του αζιμούθιου και της ανύψωσης είναι -37.5 και 300 αντίστοιχα. Η χρήση αυτής της συνάρτησης παρέχει στο χρήστη μεγάλη ευελιξία να αποτυπώσει τη γραφική παράσταση σύμφωνα με τις ανάγκες της εφαρμογής του.
3-d γραφικές παραστάσεις view([x,y,z]) sets the view direction to the Cartesian coordinates x, y, and z. The magnitude of (x,y,z) is ignored. view(2) sets the default twodimensional view, az = 0, el = 90. view(3) sets the default threedimensional view, az = 37.5, el = 30.
Εισαγωγή Κειμένου σε Γράφημα ( Εντολή gtext ) Μπορούμε να εισάγουμε κείμενο σε ένα γράφημα με τις εντολές gtext και text. Παράδειγμα Να γραφούν οι εντολές για τη δημιουργία ενός γραφήματος των συναρτήσεων x^2 και x^3 με το αντίστοιχο κείμενο. Με τις παρακάτω εντολές : x = -1:0.1:1; y1 = x.^2; y2 = x.^3; plot(x,y1,'b-',x,y2,'r-.'); θα δημιουργηθεί το γράφημα :
Με τις εντολές gtext( x^2 ); gtext( x^3 ); ανοίγει το γράφημα και μπορούμε με το ποντίκι να μετακινήσουμε το σταυρό που εμφανίζεται στη θέση που θέλουμε να εμφανιστεί το κείμενο. Μετά τις δύο εισαγωγές κειμένου, η προηγούμενη εικόνα θα πάρει την παρακάτω μορφή :
Παρατήρηση Παρόμοιο αποτέλεσμα μπορούμε να έχουμε με τη χρήση της εντολής text, αρκεί να δώσουμε τις συντεταγμένες της θέσης στην οποία θα μπει το κείμενο στο γράφημα. Αν στο προηγούμενο παράδειγμα, αντί των εντολών gtext, δώσουμε τις εντολές : text(-0.8,0.6,'y=x^2') text(-0.8,-0.6,'y=x^3') θα πάρουμε το ακόλουθο γράφημα :
Αποθήκευση Γραφήματος σε μορφή pdf, tiff, Για να αποθηκεύσουμε ένα γράφημα σε οποιαδήποτε μορφή εκτός της default fig μπορούμε να χρησιμοποιήσουμε την επιλογή Save As στο αντίστοιχο figure ή την εντολή print στο Command Prompt. Mε την εντολή print -dtiff -f1 figsin.tiff Ο προσδιοριστής -dtiff αφορά τη μορφή του αρχείου ( tiff στο παράδειγμα ), ο -f1 το γράφημα 1, 2 κ.λ.π. στο οποίο αναφερόμαστε ( figure 1 στο παράδειγμα ) και το figsin.tiff είναι το όνομα του αρχείου στο οποίο θέλουμε να αποθηκευθεί το γράφημα.
Η Εντολή bar Με την εντολή bar, αντί της plot, σχεδιάζουμε ένα ραβδογράφημα. Παράδειγμα 12 Για να γίνει ένα ραβδογράφημα με τις πωλήσεις κάθε μήνα, όπου οι τιμές των πωλήσεων είναι τυχαίοι ακέραιοι αριθμοί μεταξύ του 1 και του 100 θα χρειαστούν οι παρακάτω εντολές, με αποτέλεσμα το γράφημα του ακόλουθου παραδείγματος x = 1:1:12; y = randint(1,12,100); bar(x,y); Παρατήρηση Η εντολή randint μετατρέπει τους τυχαίους αριθμούς στο ( 0, 1 ) σε ακέραιους αφού τους πολλαπλασιάσει με το 100.
Η Εντολή stem Παρόμοιο με την εντολή bar αποτέλεσμα, με πιο λεπτές μπάρες και με κύκλους όμως στην κορυφή κάθε μπάρας έχει και η εντολή stem. Παράδειγμα Αν στο προηγούμενο παράδειγμα χρησιμοποιήσουμε την εντολή stem αντί της bar, θα χρειαστούν οι παρακάτω εντολές, με αποτέλεσμα το γράφημα του ακόλουθου παραδείγματος x = 1:1:12; y = randint(1,12,100); stem(x,y);
Η Εντολή pause Η εντολή pause ( χωρίς όρισμα ) σταματά την εκτέλεση του κώδικα μέχρι να πατήσει ο χρήστης το πλήκτρο Enter ή για όσο χρονικό διάστημα έδωσε ο χρήστης σαν όρισμα στην παρένθεση. Σαν όρισμα δίνεται ένας αριθμός σε δευτερόλεπτα. Αν για παράδειγμα δώσουμε την εντολή pause(1); το πρόγραμμα θα κάνει παύσεις ενός δευτερολέπτου μέχρι να εμφανίσει το επόμενο γράφημα.
Εισαγωγή Εικόνας σε Γράφημα ( Εντολές imread, image ) Για να εισάγουμε μια εικόνα jpg, tiff κ.λ.π. σε κάποιο γράφημα, θα πρέπει να διαβάσουμε την εικόνα σε κάποια μεταβλητή με την εντολή imread και να την αποθηκεύσουμε στο Figure με την εντολή image. Παράδειγμα Να γραφούν οι εντολές για την αποθήκευση στο figure 1 της εικόνας att.jpg που βρίσκεται στον παρόντα φάκελο. Με τις παρακάτω εντολές figure(1); x = imread('att.jpg'); image(x); το figure 1 θα έχει την παρακάτω εικόνα :
Παρατήρηση Αν χρησιμοποιήσουμε και την εντολή axis off θα αφαιρεθούν οι άξονες, οπότε θα έχουμε την παρακάτω εικόνα :
axis Κλείδωμα/ξεκλείδωμα αξόνων Ίσες μονάδες αξόνων Διαγραφή αξόνων Όρια αξόνων. Μετατροπή του ορθογώνιου πλαισίου σε τετραγωνικό Επαναφορά παραμέτρων αξόνων στις default τιμές Απαγόρευση οποιασδήποτε αλλαγής στις παραμέτρους των αξόνων του διαγράμματος axis axis equal axis off axis([xmin, xmax,ymin,ymax]) axis square axis normal axis axis
Εισαγωγή Αφαίρεση περιγράμματος στους άξονες με την εντολή box Παράδειγμα: [X,Y,Z] = peaks; surf(x,y,z) box on box off
H εντολή fill χρωματίζει πολύγωνα Παράδειγμα: Δημιουργία κόκκινου οκτάγωνου t = (1/16:1/8:1)'*2*pi; x = cos(t); y = sin(t); fill(x,y,'r') axis square Αντίστοιχα υπάρχει και η fill3 για χρωματισμό 3d πολυγώνων.
Γραφικές παραστάσεις Διάγραμμα διασποράς Η εντολή scatter(x,y) δημιουργεί ένα διάγραμμα διασποράς με κύκλους στις θέσεις που ορίζονται από τα διανύσματα x και y. Το συγκεκριμένο γράφημα είναι γνωστό και σαν διάγραμμα φυσαλίδας. Επιπλέον παράμετροι της συνάρτησης αυτής καθορίζουν το χρώμα, το μέγεθος, το γέμισμα κλπ των κύκλων αυτών. Παράδειγμα: Create x as 200 equally spaced values between 0 and. Create y as cosine values with random noise. Then, create a scatter plot. x = linspace(0,3*pi,200); y = cos(x) + rand(1,200); scatter(x,y)
Γραφικές παραστάσεις Η εντολή scatter3(x,y,z) δημιουργεί ένα τρισδιάστατο διάγραμμα διασποράς Παράδειγμα Create a 3-D scatter plot. Use sphere to define vectors x, y, and z. figure [X,Y,Z] = sphere(16); x = [0.5*X(:); 0.75*X(:); X(:)]; y = [0.5*Y(:); 0.75*Y(:); Y(:)]; z = [0.5*Z(:); 0.75*Z(:); Z(:)]; scatter3(x,y,z)
Γραφικές παραστάσεις polar: σχεδιάζει ένα γράφημα συνάρτησης με πολικές συντεταγμένες (ακτίνα με γωνία) t = 0 : 0.01 : 2*pi; y = sin(3*t).*exp(-0.1*t); polar(t,y); grid on;