gnuplot - wprowadzenie

Podobne dokumenty
Analizowanie danych. Katarzyna Grzelak. listopad K.Grzelak (IFD UW) 1 / 24

Pracownia fizyczna i elektroniczna (w tym komputerowa)

GNUPLOT Wprowadzenie. dr inż. Marzena Tefelska Wydział Fizyki Politechnika Warszawska 2015

S88 Badanie rzutu kostką sześcienną

Wstęp do gnuplota. Dominik Perykasza. 1 Wstęp 2. 2 Rysowanie wykresów Modyfikacja parametrów wykresu Modyfikowanie styli...

GNUPLOT Wprowadzenie. dr inż. Marzena Sala-Tefelska Wydział Fizyki Politechnika Warszawska 2017

Wizualizacja danych 2D i 3D - Gnuplot

gnuplot czyli jak zrobić wykres, żeby się nie narobić

Wizualizacja danych 2D i 3D - Gnuplot

Gnuplot wprowadzenie v. 2.0

Qtiplot. dr Magdalena Posiadała-Zezula

Gnuplot. narzędzie do tworzenia wykresów

zajęcia 2 Definiowanie wektorów:

Wizualizacja danych - Gnuplot

Pracownia wykorzystania zasobów internetowych

Wprowadzenie do programu gnuplot

GnuPlot. Program do tworzenia wykresów. Zbigniew Koza. Uniwersytet Wrocławski Instytut Fizyki Teoretycznej. GnuPlot p. 1/30

Metody Przetwarzania Danych Meteorologicznych Ćwiczenia 01

Scilab - podstawy. Wersje instalacyjne programu Scilab mogą zostać pobrane ze strony

Pracownia komputerowa. Dariusz wardecki, wyk II

Wartości x-ów : Wartości x ów można w Scilabie zdefiniować na kilka sposobów, wpisując odpowiednie polecenie na konsoli.

Wizualizacja danych 2D i 3D - Gnuplot

Krótka instrukcja opracowania danych w programie SciDAVis v. 1-D013-win

Wprowadzenie do Gnuplota

Sieci Komputerowe 2 / Ćwiczenia 1

Elementy termodynamiki atmosfery i fizyki chmur Ćwiczenia 01

Laboratorium Algorytmy Obliczeniowe. Lab. 9 Prezentacja wyników w Matlabie

Wizualizacja danych 2D i 3D - Gnuplot

Programowanie w C++ Wykład 1. Katarzyna Grzelak. 26 luty K.Grzelak (Wykład 1) Programowanie w C++ 1 / 28

Ćwiczenia 01. Sylwester Arabas (ćwiczenia do wykładu prof. Hanny Pawłowskiej) 22. lutego 2011 r.

Funkcje: wielomianowa, wykładnicza, logarytmiczna wykład 3

Funkcje: wielomianowa, wykładnicza, logarytmiczna wykład 2

Wprowadzenie do pakietów MATLAB/GNU Octave

1 Funkcje elementarne

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

PętlaforwOctave. Roman Putanowicz 13 kwietnia 2008

Analiza Matematyczna MAEW101 MAP1067

Programowanie w C++ Wykład 10. Katarzyna Grzelak. 21 maja K.Grzelak (Wykład 10) Programowanie w C++ 1 / 21

Lech Sławik Podstawy Maximy 9 Podstawowa grafika.wxmx 1 / 16

1. Opis okna podstawowego programu TPrezenter.

Grafika w Matlabie. Wykresy 2D

Zajęcia nr 1 (1h) Dwumian Newtona. Indukcja. Zajęcia nr 2 i 3 (4h) Trygonometria

Zagadnienia do małej matury z matematyki klasa II Poziom podstawowy i rozszerzony

SCILAB. Wprowadzenie do Scilaba:

Wprowadzenie do środowiska MATLAB z zastosowaniami w modelowaniu i analizie danych

Programowanie: grafika w SciLab Slajd 1. Programowanie: grafika w SciLab

Metodyka wykonania kartogramu z podziałem na klasy wg punktów charakterystycznych wraz z opracowaniem kartogramicznej legendy.

1 Funkcje dwóch zmiennych podstawowe pojęcia

Wizualizacja funkcji w programie MATLAB

Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)

Pracownia fizyczna i elektroniczna dla Inżynierii Nanostruktur, (wersja instrukcji a, T. Słupiński)

III. Funkcje rzeczywiste

Programowanie w C++ Wykład 1. Katarzyna Grzelak. 25 luty K.Grzelak (Wykład 1) Programowanie w C++ 1 / 38

1) Podstawowe obliczenia. PODSTAWY AUTOMATYKI I ROBOTYKI Laboratorium. Wykonał: Łukasz Konopacki Sala 125. Grupa: poniedziałek/p,

1 Programowanie w matlabie - skrypty i funkcje

Funkcje wielu zmiennych

Metody i analiza danych

Gnuplot, Postscript i narz edzia z nim zwiazane

Funkcja kwadratowa. f(x) = ax 2 + bx + c,

Wykorzystanie programów komputerowych do obliczeń matematycznych

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

Webowy generator wykresów wykorzystujący program gnuplot

Programowanie w C++ Wykład 3. Katarzyna Grzelak. 12 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 35

MATrix LABoratory. A C21 delta tvx444 omega_zero. hxx J23 aaa g4534 Fx_38

PODSTAWY INFORMATYKI 1 MATLAB CZ. 3

Obliczenia iteracyjne

Funkcja pierwotna, całka oznaczona na podstawie funkcji pierwotnej

Funkcje - monotoniczność, różnowartościowość, funkcje parzyste, nieparzyste, okresowe. Funkcja liniowa.

Metody numeryczne Laboratorium 2

Funkcja kwadratowa. f(x) = ax 2 + bx + c = a

Lab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur.

ROZKŁAD MATERIAŁU DO II KLASY LICEUM (ZAKRES ROZSZERZONY) A WYMAGANIA PODSTAWY PROGRAMOWEJ.

FUNKCJE WIELU ZMIENNYCH

Metody Numeryczne. Laboratorium 1. Wstęp do programu Matlab

Ćwiczenie 3: Wprowadzenie do programu Matlab

Adam Cebula "Głupi pomysł, czyli instrukcja rysowania wykresów"

Elementy okna MatLab-a

Wprowadzenie do Mathcada 1

(a b 1 2); : ( b a + b ab 2 + c ). : a2 2ab+b 2. Politechnika Białostocka KATEDRA MATEMATYKI. Zajęcia fakultatywne z matematyki 2008

Programowanie w C++ Wykład 8. Katarzyna Grzelak. 7 maja K.Grzelak (Wykład 8) Programowanie w C++ 1 / 31

FUNKCJE. 1. Podstawowe definicje

Wstęp do obsługi Linux a

Pomorski Czarodziej 2016 Zadania. Kategoria C

Wprowadzenie do Scilab: funkcje i wykresy

WEKTORY I MACIERZE. Strona 1 z 11. Lekcja 7.


Wykresy. Informatyka Arkusz kalkulacyjny Excel dla WINDOWS. Excel. cz.4. Wykresy. Wykresy. Wykresy. Wykresy

Wykład A1. AutoCAD. Jarosław Bydłosz Katedra Geomatyki

Indukcja matematyczna

Modelowanie matematyczne w zastosowaniach biomedycznych

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

Kurs z matematyki - zadania

PRZYKŁADOWE SKRYPTY (PROGRAMY W MATLABIE Z ROZSZERZENIEM.m): 1) OBLICZANIE WYRAŻEŃ 1:

Rachunek różniczkowy i całkowy w przestrzeniach R n

Użycie przestrzeni papieru i odnośników - ćwiczenie

Transkrypt:

gnuplot - wprowadzenie Katarzyna Grzelak październik 2017 K.Grzelak (IFD UW) 1 / 22

Wprowadzenie Programy do opracowywania danych doświadczalnych (rysowanie funkcji, punktów z błędami, dopasowywanie zależności funkcyjnych do danych... ): gnuplot darmowy, dostępny dla systemów operacyjnych Linux (zwykle w standardowej dystrybucji!), Windows, MAC OS polecenia wpisywane jak w terminalu lub zapisywane w pliku-skrypcie (!) można łatwo zautomatyzować procedurę wykonywania rysunków niewyszukana grafika w OKWF ie uruchamiany z terminala poleceniem gnuplot strona www http://www.gnuplot.info/ K.Grzelak (IFD UW) 2 / 22

Wprowadzenie Origin komercyjny program, licencja (Windows) Wydziału Fizyki dla studentów WF, licencja MISMaP dla studentów MISMaP qtiplot komercyjny program, istnieja wersje demo, wersje na Linux,Windows,MacOS w OKWF ie uruchamiany z terminala poleceniem qtiplot strona www http://www.qtiplot.com/ SciDAVis darmowy program, wersje na Linux,Windows,MacOS w OKWF ie uruchamiany z terminala poleceniem scidavis strona www http://scidavis.sourceforge.net/... K.Grzelak (IFD UW) 3 / 22

Polecenia programu gnuplot Polecenia moga być wprowadzane interakcyjnie albo zapisywane w pliku-skrypcie. gnuplot (polecenia wpisywane interakcyjnie) gnuplot skrypt.gp (okno graficzne zaraz znika po wykonaniu) gnuplot -persist skrypt.gp (okno graficzne zostaje na zawsze) gnuplot skrypt.gp (gdy wewnatrz skryptu na końcu jest linia pause -1 skrypt czeka na naciśnięcie ENTER) Rozróżniane sa wielkie i małe litery Wszystkie nazwy poleceń można skrócić (tak długo jak skrót polecenia jest jednoznaczny) Opcje poleceń musza być podawane w określonej kolejności K.Grzelak (IFD UW) 4 / 22

Zapisywanie napisów i liczb Napisy zapisywane sa w pojedynczych lub podwójnych apostrofach: dane.dat Liczby całkowite: 1, 15 Liczby rzeczywiste: 1.,15.,1E0,1.5E1,5E-1 Uwaga na wynik dzielenia liczb całkowitych, np. 1/2 = 0 Zdefiniowana stała pi K.Grzelak (IFD UW) 5 / 22

Funkcje, operatory Zdefiniowane funkcje: abs(x), sin(x), cos(x), tan(x), exp(x),sqrt(x)... Własne definicje funkcji, np.: a(x b) 2 f(x)=a*(x-b)**2 Operatory: a**b (potęgowanie), a*b (mnożenie), a/b (dzielenie, a-b, a+b... K.Grzelak (IFD UW) 6 / 22

Rysowanie funkcji plot sin(x) set samples 10 plot sin(x) lub replot Program oblicza wartość funkcji w tylu punktach ile ustawimy poleceniem set samples Powrót do domyślnych ustawień: reset a=5;b=6 h(x)=a*x+b plot h(x) g(x)=cos(a*x) plot a=0.2,g(x),a=0.4, g(x) K.Grzelak (IFD UW) 7 / 22

Rysowanie funkcji skala logarytmiczna: plot exp(-x) set logscale y replot dwa rysunki na jednym: plot sin(x),cos(x) K.Grzelak (IFD UW) 8 / 22

Rysowanie funkcji plot sin(x) with points plot sin(x) with boxes plot sin(x) with lines plot sin(x) with impulses plot [-pi:pi] sin(x) K.Grzelak (IFD UW) 9 / 22

Rysowanie funkcji, postać parametryczna Przykład. Krzywa zdefiniowana w następujacy sposób: { x = 5 cos t y = 2 sin t set parametric set xrange [-6:6] set yrange [-6:6] set trange [0:10] set isosamples 60 plot 5*cos(t),2*sin(t) K.Grzelak (IFD UW) 10 / 22

Rysowanie funkcji w 3D splot sin(x*y) set hidden3d set isosamples 30,30 replot set xrange[-3:3] set yrange[-3:3] set zrange[-2:5] set parametric splot 2*u,u**2+v,v**2 K.Grzelak (IFD UW) 11 / 22

Dane z błędami i bez plot dane.dat plot dane.dat with errorbars plot dane.dat with xyerrorbars plot dane.dat using 1:2:3 w ye plot dane.dat using 2:1:3 w xe Rysowanie: na osi x suma pierwszej i czwartej kolumny, na osi y wartości z piatej kolumny: plot dane1.dat u ($1+$4):5 with lines K.Grzelak (IFD UW) 12 / 22

Opcje dla jednego rysunku Tytuł: set title Beams Opis dolnej osi: set xlabel Energy [GeV] Opis lewej osi: set ylabel p1[gev] Zmiana zakresu osi x: plot [-5:10] sin(x) Zmiana zakresu osi x i y: plot [-5:10] [-1.5:1.5] sin(x) K.Grzelak (IFD UW) 13 / 22

Dwa wykresy na jednym rysunku Przy nakładaniu na siebie dwóch rysunków o różnych skalach sa cztery możliwe zestawy osi: x1y1 (lewa i dolna), x1y2 (prawa i dolna), x2y2 (prawa i górna), x2y1 (lewa i górna) Np. użycie dolnej i prawej osi: axes x1y2 Przykład: plot dane1.dat u ($1+$4):5 with lines, dane2.dat u ($1+$4):($15-$17) w l axes x1y2 Opis górnej osi: set x2label Energy [GeV] Opis prawej osi: set y2label p1[gev] Kreski na prawej osi: set y2tics set ytics nomirror set tics out K.Grzelak (IFD UW) 14 / 22

Legenda Zmiana legendy: plot sin(x) title sinus Właczanie: set key Wyłaczanie: unset key lub set nokey K.Grzelak (IFD UW) 15 / 22

Zapisywanie do pliku...... jest możliwe w wielu formatach: pdf,png,jpg,ps,eps,latex... Np. dla formatu pdf: set terminal pdf set output sin.pdf plot sin(x) lub replot set output set terminal x11 na Linux ie lub set term win na Windows K.Grzelak (IFD UW) 16 / 22

Zapisywanie do pliku...... jest możliwe w wielu formatach: pdf,png,jpg,ps,eps... Np. dla formatu eps: set terminal postscript eps color set output sin.eps plot sin(x) lub replot set output set terminal x11 Także set terminal latex i inne W Linux ie w terminalu epstopdf sin.eps K.Grzelak (IFD UW) 17 / 22

Przekazywanie argumentów do wnętrza skryptu Niezależnie od wersji programu gnuplot: gnuplot -e polecenie1; polecenie2;... skrypttest.gp Przykład 1: gnuplot -e filename= dane.txt Wnętrze skryptu: plot filename w e pause -1 skryptdane.gp Przykład 2: gnuplot -e n=1;m=2;s=2 skrypt.gp Wnętrze skryptu: f(x)=n*exp(-(x-m)**2/s**2) plot f(x) pause -1 K.Grzelak (IFD UW) 18 / 22

Przekazywanie argumentów do wnętrza skryptu Do wnętrza skryptu można przesłać argumenty wywołania podobnie jak w bash Uwaga - zależność składni od wersji programu gnuplot! Wywołanie: gnuplot -e call skrypt2.gp 1 5 7 Wersja 4: Wnętrze skryptu: n=$0; m=$1; s=$2 f(x)=n*exp(-(x-m)**2/s**2) plot f(x) Wersja 5: Wnętrze skryptu: n=arg1; m=arg2; s=arg3 f(x)=n*exp(-(x-m)**2/s**2) plot f(x) K.Grzelak (IFD UW) 19 / 22

Dopasowywania zależności funkcyjnych do danych Metoda najmniejszych kwadratów: Poszukiwanie wartości parametrów a 1,..., a l, które minimalizuja wyrażenie: n X 2 [y i f (x; a 1,..., a l )] 2 = f - dopasowywana funkcja y i - wynik pomiaru σ i - bład pomiaru y i i=1 σ 2 i Jakość dopasowania: χ 2 /liczba_stopni_swobody K.Grzelak (IFD UW) 20 / 22

Dopasowywanie krzywych Dopasowywanie zależności funkcyjnych do danych doświadczalnych. Kolejne etapy: Definicja funkcji np. ft(x)=a*x**2+b*x+c Definiowanie poczatkowych wartości parametrów (tak aby funkcja możliwie najlepiej opisywała dane) np. a=15; b=2.5; c=1.5 Sprawdzenie jak dobrze te parametry zostały wybrane np. plot dane.dat w e, ft(x) Dopasowanie (uwaga - przy opcji using musza byc zdefiniowane dokładnie (!) 3 kolumny, trzecia kolumna to błedy y) np. fit ft(x) dane.dat using 1:2:3 via a,b,c Sprawdzenie jakości dopasowania: Wizualne np. plot dane.dat w e, ft(x) Sprawdzenie czy χ 2 /liczba_stopni_swobody jest bliskie 1 K.Grzelak (IFD UW) 21 / 22

Ustawienia Zapisywanie błędów parametrów dopasowania do zmiennej: set fit errorvariables Przykład na wypisywanie wartości parametrów i ich błędów na ekran: set fit errorvariables n=1;m=2;s=4 f(x)=n*exp(-(x-m)**2/s**2) plot f(x) fit f(x) funkcja1.dat u 1:2:3 via n,m,s print n=, n, n_err=, n_err pause -1 Wyniki dopasowania zapisywane do pliku o nazwie fit.log: FIT_LOG= fit.log Przykłady zmian warunków na zakończenie poszukiwania minimum wyliczanej funkcji: FIT_LIMIT = 1e-6 FIT_MAXITER = 50 K.Grzelak (IFD UW) 22 / 22