MC, 23:42 sobota, 12.02.2011 r.
Ilustracja do artykułu: GNUplot: część 12. - Ustawienia legendy

GNUplot: część 12. - Ustawienia legendy

W tej części poradnika do programu GNUplot chciałbym poruszyć temat ustawień legendy wykresu - bardzo ważnego elementu rzutującego na klarowność odbioru zestawionych danych. Z tego powodu niezbędna jest umiejętność jej modyfikacji do konkretnych przypadków i potrzeb. Pokażę zatem między innymi jak zmienić położenie legendy, czy orientację danych, które zawiera.

1. Włączanie i wyłączanie legendy

Legenda wykresu w programie GNUplot jest włączona w sposób domyślny, więc o ile wcześniej sami jej nie wyłączyliśmy, będzie widoczna. Jeżeli zajdzie potrzeba całkowitego wyłączenia legendy dla wszystkich obrazowanych danych, możemy wydać polecenie:
set key off;

W ten sposób legenda całkowicie zniknie z obszaru wykresu. Jeśli interesuje nas wyłącznie uwzględnienie tylko pewnych danych, to wykresy, które nie mają widnieć w legendzie muszą być narysowane z opcją notitle (o tym więcej w kolejnym podpunkcie).
Gdy całkowicie wyłączyliśmy wyświetlanie legendy na wykresie, możemy ją włączyć używając polecenia:
set key on;

Przykład 1.
reset;
set key off;
plot sin(x);

Przykład 2.
reset; plot sin(x), cos(x) notitle;

Przykład 3.
reset;
set key off;
set key on;
plot sin(x);

2. Tytuł legendy i tytuły wykresów

Aby ustalić tytuł legendy musimy użyć polecenia:
set key title "Tytuł legendy";

Jak widać sprawa jest bardzo prosta. Jeśli zaś chodzi o tytuły wygenerowanych wykresów, które mają znaleźć się w legendzie, to mamy do wyboru dwa tryby pracy:
1. W legendzie uwzględniany jest tytuł każdego z wykresów, chyba że użyjemy podczas rysowania go opcji notitle.
2. Uwzględniane są tylko te wykresy, którym nadamy tytuł za pomocą opcji title.

Pierwszy tryb pracy jest trybem domyślnym, zaś wyłączenie go jest jednoznaczne z przejściem do drugiego trybu. Aby to zrobić musimy wydać polecenie:
set key noautotitle;

Z koeli, gdy chcemy wrócić do trybu, w którym uwzględniany w legendzie jest każdy z wykresów, chyba że została użyta opcja notitle, musimy użyć komendy:
set key autotitle;

Przykład 1.
restart;
set key title "Legenda do wykresu";
plot sin(x), cos(x) title "Funkcja cosinus";

Przykład 2.
restart;
set key title "Legenda do wykresu";
plot sin(x) notitle, cos(x) title "Funkcja cosinus";

Przykład 3.
restart;
set key title "Legenda do wykresu";
set key noautotitle;
plot sin(x), cos(x) title "Funkcja cosinus";

Aby odwrócić kolejność tytułów w legendzie wystarczy użyć polecenia:
set key invert;

Przykład 4.
restart;
set key title "Legenda do wykresu";
set key invert;
plot sin(x) title "Funkcja sinus", cos(x) title "Funkcja cosinus";

3. Orientacja danych w legendzie

Domyślnie dane zawarte w legendzie ustawione są w sposób pionowy, jednak w ogólności uzyskujemy to poleceniem:
set key vertical;

Mamy również możliwość ustawienia danych w poziomie:
set key horizontal;

Przykład 1.
restart;
set key vertical;
plot sin(x) title "Funkcja sinus", cos(x) title "Funkcja cosinus";

Przykład 2.
restart;
set key horizontal;
plot sin(x) title "Funkcja sinus", cos(x) title "Funkcja cosinus";

4. Położenie legendy

Domyślnie legenda usytuowana jest w prawym górnym rogu obszaru wykresu. Zobaczmy jak możemy operować ustawieniami położenia.

Położenie legendy wewnątrz obszaru wykresu
Aby ustawić położenie legendy wewnątrz obszaru wykresu musimy wydać polecenie:
set key inside położenie_pion położenie_poziom;

gdzie:
położenie_pion przyjmuje wartości: left, right, center
położenie_poziom przyjmuje wartości: top, bottom, center

Schematycznie wygląda to w ten sposób:

left top center top right top
left center center center right center
left bottom center bottom right bottom

Przykład 1.
restart;
set key inside center top;
plot sin(x) title "Funkcja sinus";

Przykład 2.
restart;
set key inside right bottom;
plot sin(x) title "Funkcja sinus";

Położenie legendy poza obszarem wykresu
Sposób na ustawienie położenia legendy poza obszarem wykresu jest bardzo podobny do tego dla wnętrza obszaru - wydajemy polecenie:
set key outside położenie_pion położenie_poziom;

gdzie:
położenie_pion przyjmuje wartości: left, right, center
położenie_poziom przyjmuje wartości: top, bottom, center

Schematycznie wygląda to w ten sposób:

left top center top right top
left center right center
left bottom center bottom right bottom

Przykład 3.
restart;
set key outside center top;
plot sin(x) title "Funkcja sinus";

Przykład 4.
restart;
set key outside right center;
plot sin(x) title "Funkcja sinus";

Położenie legendy w miejscu określonym współrzędnymi
Aby ustawić położenie legendy wykresu w konkretnym miejscu wykresu, musimy użyć komendy:
set key at x,y;

gdzie x, y to współrzędne prawego górnego rogu legendy.

Przykład 5.
restart;
set key at -5,0.6
plot sin(x) title "Funkcja sinus";

5. Obramowanie legendy

Aby ustawić obramowanie legendy musimy wydać komendę:
set key box x;

gdzie x to dodatnia liczba całkowita określająca typ obramowania (kolor lub styl linii - zależnie od terminala)

Przykład 1.
restart;
set key box 5;
plot sin(x);

6. Rozmiar legendy

Chcąc określić rozmiar legendy możemy posłużyć się poleceniem:
set key width x height y;

gdzie x to szerokość legendy a y - wysokość.

Przykład 1.
restart;
set key width 5 height 2.1;
set key box 3;
plot sin(x);

Przykład 2.
restart;
set key width 5;
set key height 3;
set key box 3;
plot sin(x);

Przykład 3.
restart;
set key width 5;;
set key box 3;
plot sin(x);

7. Ustawienia czcionki legendy

Temat ustawień czcionki w legendzie został poruszony w artykule - GNUplot zmiana czcionki

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

Imię:
Treść: