MC, 22:32 sobota, 06.11.2010 r.
Ilustracja do artykułu: GNUplot: część 7. - Formatowanie osi

GNUplot: część 7. - Formatowanie osi

Formatowanie osi

W tej części poradnika chciałbym skupić się na temacie formatowania osi. Formatowania czyli zmieniania parametrów tych osi, tak by wyglądały w sposób odpowiadający naszym potrzebom/zamierzeniom itp.

Ustawienie zakresu poszczególnych osi

Gdy istnieje potrzeba ustawienia pewnych ogólnych opcji dotyczących wykresu używa się polecenia set. Tak jest również kiedy chodzi o formatowanie osi. Najpierw ustalmy zakres dolnej osi X:
set xrange [xmin : xmax];

Warto wiedzieć, że xrange można w skrócie zapisać jako xr (w dalszej części artykuły będzie stosowany zapis skrótowy).
Teraz zajmijmy się górną osią X, choć należy pamiętać, że domyślnie ma ona ten sam zakres co dolna oś X, więc w najczęstszych przypadkach w ogóle nie trzeba ustalać jej zakresu.
set x2r [xmin : xmax];

Ustalenie zakresów dla osi Y jest w pełni analogiczne.
set yr [ymin : ymax];
set y2r [ymin : ymax];

Przykład:
set xr [-5 : 5];
set x2r [-3 : 4];
set yr [-1 : 1];
set y2r [0 : 0.5];
plot sin(x);

Uwaga! Aby wyświetlona została podziałka na osiach X2 oraz Y2, musi ona zostać wcześniej ustalona.

Ustawienie podziałki poszczególnych osi

Teraz zajmijmy się ustaleniem podziałek, które mają występować na każdej z osi.

Podziałka równomierna
Chcąc ustalić podziałkę równomierną musimy wydać odpowiednie polecenie z trzema argumentami - najmniejsza wartość na podziałce, krok zmiany, największa wartość na podziałce. Całość, dla dolnej osi X, ma następującą składnię:
set xtics xmin, zmiana_x, xmax;

Oraz analogicznie dla pozostałych osi:
set x2tics xmin, zmiana_x, xmax;
set ytics ymin, zmiana_y, ymax;
set y2tics ymin, zmiana_y, ymax;

Przykład:
set xr [-5 : 5];
set x2r [-3 : 4];
set yr [-1 : 1];
set y2r [0 : 0.5];

set xtics -5, 0.5, 5;
set x2tics -1, 1, 2;
set ytics -1, 1, 1;
set y2tics 0, 0.1, 0.5;

plot sin(x);

Podziałka nierównomierna
Ustalając podziałkę nierównomierną musimy jedynie wskazać jakie wartości mają być na nią naniesione. Dla dolnej osi X robimy to w sposób następujący:
set xtics (x1, x2, ..., xn);

Analogicznie dla pozostałych osi:
set x2tics (x1, x2, ..., xn);
set ytics (y1, y2, ..., yn);
set y2tics (y1, y2, ..., yn);

Przykład:
set xr [-5 : 5];
set x2r [-3 : 4];
set yr [-1 : 1];
set y2r [0 : 0.5];

set xtics (-5, 0, 1, 2, 5);
set x2tics (-1, 0, 2, 2.5);
set ytics (-0.5, 0, 0.75);
set y2tics (0.1, 0.2, 0.45);

plot sin(x);

Podziałka złożona z etykiet (napisów/podpisów)
Podziałka nie musi składać się z wartości liczbowych - zamiast nich, pojawić się mogą etykiety, czyli inaczej mówiąc, napisy. Każdą z etykiet należy jednak przyporządkować konkretnej wartości liczbowej. W praktyce wygląda to następująco:
set xtics ("Etkieta1" x1, "Etkietan" xn, ..., "Etkietan" xn);

A także dla pozostałych osi:
set x2tics ("Etkieta1" x1, "Etkietan" xn, ..., "Etkietan" xn);
set ytics ("Etkieta1" y1, "Etkietan" yn, ..., "Etkietan" yn);
set y2tics ("Etkieta1" y1, "Etkietan" yn, ..., "Etkietan" yn);

Przykład:
set xr [-5 : 5];
set yr [-1.5 : 1.5];
set xtics ("Wartosc dla -1" -1, "Maksimum w PI/2" 3.14/2);
set ytics ("Minimum" -1, "Zero" 0, "Maksimum" 1);
plot sin(x);

Usunięcie podziałki z osi
Gdy chcemy usunąć podziałkę z dodatkowych równoległych osi układu, musimy wydać polecenie:
set xtics nomirror;
set ytics nomirror;
Gdy zaś zainteresowani jesteśmy usunięciem podziałki z osi głównych, wpiszmy komendę:
unset xtics;
unset ytics;

Reset ustawień
Czasem, kiedy już wystaczająco namotamy w ustawieniach osi, warto posiadać umiejętność zresetowania wprowadzonych ustawień. Jak nie trudno się domyslić, służy do tego polecenie reset.

Podczas używania etykiet na podziałce, bardzo często musimy wykorzystywać znaki specjalne, w tym np. greckie litery. Temat ten zostanie podjęty przeze mnie w kolejnym artykule o GNUplocie.

Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!

Imię:
Treść: