GNUplot: część 19. - Rysowanie co któregoś punktu (wiersza danych), ustalenie punktów brzegowych
Kolejna porada dotycząca użytkowania programu GNUplot. Nadeszła pora by zadać sobie pytanie, w jaki sposób możemy wprowadzić okresową selekcję punktów umieszczanych na wykresie. Ten wpis ma na celu przybliżenie tego zagadnienia.
Po co rysować tylko "co któreś" dane?
W ramach odpowiedzi na to pytanie, pewnie można by napisać cały wywód. Mnie problem ten najczęściej dotyka w kontekście nadmiarowej ilości danych na przykład uzyskanych z jakiegoś pomiaru. Nadmiarowych w tym sensie, że nie można ich umieścić na wykresie stworzonym przy pomocy punktów, bo te zupełnie by się ze sobą zlały. W takiej sytuacji, warto właśnie wybrać tylko pewne punkty pomiarowe i tylko je nanieść na wykres. Oczywiście, jak już wspomniałem, to tylko jeden z wielu przykładów jakie można przytoczyć na potwierdzenie potrzeby takiej operacji selekcji.
No dobrze... a jak to zrobić?
Możliwość o jakiej mowa w tym artykule, dostarczona jest wraz ze słowem kluczowym every przekazywanym jako parametr do polecenia plot. Spójrzmy na składnię takiej dyrektywy:
Jak widać wraz ze słowem kluczowym every należy dołączyć kilka dodatkowych parametrów liczbowych definiujących sposób selekcji danych, rozdzielonych dwukropkiem. Możemy również w ten sposób ustalić zakres punktów pomiarowych jaki chcemy uwzględnić na wykresie (parametry: początkowy i końcowy wiersz), co również jest bardzo przydane w wielu przypadkach!
O ile pojęcie wiersza, użyte w powyższym poleceniu, nie powinno dla nikogo być zagadką, bo chodzi po prostu o jeden wiersz danych, punkt pomiarowy, o tyle inaczej może się mieć sytuacja z pojęciem blok.
Czym jest blok danych?
O blokach danych zapewne zrobię kiedyś osobny wpis, bo warto wiedzieć o nich nieco więcej, przez wzgląd na to jak wiele ciekawych możliwości stwarzają. Teraz pokrótce powiem, że chodzi o zwykły kolumnowy zbiór danych, podzielony na podzbiory przy pomocy pustej linii w pliku, jak np.:1 10.1
2 10.7
3 11.3
4 12.0
5 12.6
# Drugi blok danych
6 13.2
7 13.8
8 14.4
9 15.0
Czas na kilka przykładów
Skupmy się jedynie na selekcji wierszy. Oto kilka prostych przykładów:plot "data" every 1:::::1 # wszystkie punkty z pierwszego bloku
plot "data" every 2:::::1 # co drugi punkt z pierwszego bloku
plot "data" every 3::10:::1 # co trzeci punkt z pierwszego bloku począwszy od dziesiątego
plot "data" every 5::7::20:1 # co piąty punkt z pierwszego bloku począwszy od siódmego i skończywszy na dwudziestym
Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!