Podstawy biblioteki Matplotlib

Podobne dokumenty
MATPLOTLIB. WPROWADZENIE. WYKRESY 2D

Matplotlib. Krzysztof Katarzyński. Centrum Astronomii UMK

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

Matplotlib - wizualizacja danych

Wprowadzenie do Python

Matplotlib - wizualizacja danych

Podstawy Pythona. Krzysztof Gdawiec. Instytut Informatyki Uniwersytet Śląski

SCILAB. Wprowadzenie do Scilaba:

Wykresy i interfejsy użytkownika

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

Odczytywanie i zapisywanie obrazów rastrowych do plików, operacje punktowe na tablicach obrazów

Zadania z rysowania i dopasowania funkcji

Laboratorium. Cyfrowe przetwarzanie obrazów. Instrukcja 1. Podstawy języka Python

Spis treści. Wstęp. Regresja

Dzięki arkuszom zewnętrznym uzyskujemy centralne sterowanie wyglądem serwisu. Zewnętrzny arkusz stylów to plik tekstowy z rozszerzeniem css.

Grafika 3D program POV-Ray - 1 -

PyX jest pakietem Pythona do grafiki wektorowej. Pozawala zatem tworzyd pliki EPS oraz PDF.

Ćwiczenia z przetwarzania tablic 2D

Otwórz R. Zmień katalog roboczy za pomocą File/Change Dir. Wczytaj plik przypisując go obiektowi o nazwie students:

Laboratorium kryptograficzne dla licealistów 3

Paweł Kaźmierczak. styczeń 2009

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

PODSTAWY INFORMATYKI 1 MATLAB CZ. 3

Spis treści. Pojęcia wstępne. Zmienna losowa

Grafika w Matlabie. Wykresy 2D

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

FUNKCJA POTĘGOWA, WYKŁADNICZA I LOGARYTMICZNA

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

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

MapInfo Professional - 5

enova Systemowe Kolorowanie list

BIBLIOTEKA NUMPY, CZĘŚĆ 1

Diary przydatne polecenie. Korzystanie z funkcji wbudowanych i systemu pomocy on-line. Najczęstsze typy plików. diary nazwa_pliku

Laboratorium Cel ćwiczenia Ćwiczenie ma na celu praktyczne przedstawienie grafiki 3D.

Algorytm k-means jest zaimplementowany w module scipy.cluster.vq (vq: vector quantization) ([dokumentacja]). Mamy tam funkcję

MODELE KOLORÓW. Przygotował: Robert Bednarz

Witryny i aplikacje internetowe

INFORMATYKA WSTĘP DO GRAFIKI RASTROWEJ

S88 Badanie rzutu kostką sześcienną

Wprowadzenie do Scilab: funkcje i wykresy

zajęcia 2 Definiowanie wektorów:

Celem tych ćwiczeń jest zapoznanie się z klasyfikacją za pomocą sieci neuronowych.

Edytor tekstu OpenOffice Writer Podstawy

Regresja linearyzowalna

x a 1, podając założenia, przy jakich jest ono wykonywalne. x a 1 = x a 2 ( a 1) = x 1 = 1 x.

Politechnika Świętokrzyska. Laboratorium. Przetwarzanie obrazów medycznych. Ćwiczenie 12. Wykorzystanie transformacji Radona i Hougha.

pojemność [ml] tolerancja [ml] wysokość [mm]

Znaczniki języka HTML

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS

Wymagania kl. 3. Zakres podstawowy i rozszerzony

Technologie informacyjne: Excel i Python

Grafika w LaTeXu Łukasz Daros & Jakub Jakubiec

Program współpracuje z : Windows XP, Powerdraft 2004, v8, XM, Microstation 2004, v8, XM.

Podstawy analizy danych numerycznych w języku Python

1. Operacje na plikach i katalogach Chcąc przeprowadzić analizę danych należy załadować/wczytać dane do R, a wyniki z pewnością chcemy zapisać.

1. Operacje na plikach i katalogach Chcąc przeprowadzić analizę danych należy załadować/wczytać dane do R, a wyniki z pewnością chcemy zapisać.

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Rozdział 8. Regresja. Definiowanie modelu

Podstawy MATLABA, cd.

Wprowadzenie do pakietu Pylab/Matplotlib na przykładach

Program na zaliczenie: Odejmowanie widm

Instrukcja wprowadzania graficznych harmonogramów pracy w SZOI Wg stanu na r.

Elementy okna MatLab-a

Logarytmy. Funkcje logarytmiczna i wykładnicza. Równania i nierówności wykładnicze i logarytmiczne.

Kolor, mat. pomoc. dla technologia inf. (c) M. Żabka (12 listopada 2007) str. 1

STRONY INTERNETOWE mgr inż. Adrian Zapała




Ćwiczenie 4-PowerPoint

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Algorytmy i struktury danych

Wskaźnik Trading Central BReTRADER

Spis treści. Pojęcia wstępne

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

Inkscape. Menu. 1 SVG (ang. Scalable Vector Graphics) uniwersalny format dwuwymiarowej, statycznej i

TEI. Dr Wojciech Palubicki

Prezentacje multimedialne w Powerpoint

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

W pustym arkuszu utwórz automatycznie tabliczkę mnożenia w zakresie od 1*1 do 25*25.

plansoft.org Zmiany w Plansoft.org

Spis treści. Optymalizacja jednowymiarowa

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

EDYCJA TEKSTU MS WORDPAD

Wojewódzki Kuratoryjny Konkurs z Informatyki Etap szkolny

Test na koniec nauki w klasie trzeciej gimnazjum

Instrukcje. Spis treści. Hipoteza. Parametry

Temat: Zmienna losowa. Rozkład skokowy. Rozkład ciągły. Kody kolorów: Ŝółty nowe pojęcie pomarańczowy uwaga. Anna Rajfura, Matematyka

Ćwiczenie 0 : Wprowadzenie do cyfrowego przetwarzania sygnałów. wyświetla listę tematów pomocy. wyświetla okno pomocy (Help / Product Help)

2. Korzystając z ikony Warstwy stwórz nowe warstwy według podanego schematu:

Ćwiczenia 11 (12) (4 godziny). Wizualizacja i manipulacja w Matlabie

Pytania teoretyczne. Formatowanie akapitu i czcionki

Kl 7-8 Szkoła Podstawowa

Wykorzystanie programów komputerowych do obliczeń matematycznych

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

Cyfrowe Przetwarzanie Sygnałów z użyciem Pythona oraz modułów SciPy, NumPy i Matplotlib (oraz dlaczego Matlab jest zły!)

Teoria światła i barwy

Programowanie 3 - Funkcje, pliki i klasy

Transkrypt:

Podstawy biblioteki Matplotlib Krzysztof Gdawiec Instytut Informatyki Uniwersytet Śląski

Matplotlib jest biblioteką Pythona służącą do tworzenia różnego rodzaju wykresów. Biblioteka ta od samego początku miała emulować możliwości Matlaba w Pythonie. Jest napisana całkowicie w Pythonie i korzysta z różnych bibliotek, np. NumPy. Filozofią Matplotlib jest to, że powinniśmy być zdolni stworzyć proste wykresy korzystając z kilku komend lub zaledwie jednej. Wykresy otrzymane za pomocą Matplotlib możemy zapisać w różnych formatach, np. EPS, PDF, SVG, PNG, JPEG.

Głównym składnikiem, z którego będziemy korzystać to interfejs pylab. Dostarcza on nam różnych funkcji do tworzenia wykresów w podobny sposób jak to się robi w Matlabie. 3.00 1 import matplotlib.pyplot as plt 2 3 plt.plot( [3, 1, 2, 1, 3] ) 4 plt.ylabel( "Opis osi Y" ) 5 plt.xlabel( "Opis osi X" ) 6 plt.show() Opis osi Y 2.75 2.50 2.25 2.00 1.75 1.50 1.25 1.00 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 Opis osi X

1 import matplotlib.pyplot as plt 2 3 x = [2, 3, 5, 10, 13] 4 y = [3, 1, 2, 1, 3] 5 6 plt.plot( x, y ) 7 plt.axis( [1, 15, 0, 4] ) 8 plt.ylabel( "Y" ) 9 plt.xlabel( "X" ) 10 plt.show() Y 4.0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0.0 2 4 6 8 10 12 14 X

1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 x = np.arange( 0.1, 5, 0.2 ) 5 y1 = np.log( x ) 6 y2 = np.sqrt( x ) 7 y3 = np.exp( x ) 8 9 plt.plot( x, y1, x, y2, x, y3 ) 10 plt.ylabel( "Y" ) 11 plt.xlabel( "X" ) 12 plt.show() 0 1 2 3 4 5 X Y 2 1 0 1 2

Każda para argumentów x, y ma opcjonalny trzeci argument, który odpowiada za kolor i styl linii. Argument ten jest stringiem, w którym pierwsza litera oznacza kolor, a kolejne symbole styl. Dostępne kolory: "b" niebieski, "g" zielony, "r" czerwony, "c" cyjan, "m" magenta, "y" żółty, "k" czarny, "w" biały.

Przykładowe style: " " linia ciągła, " " linia kreskowa, "." linia z kreską i kropką, ":" linia kropkowa, "o" znacznik kółko, "s" znacznik kwadrat, "p" znacznik pięciokąt. Pełną listę stylów można znaleźć w dokumentacji Matplotlib https://matplotlib.org/api/ as gen/matplotlib.pyplot.plot.html

1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 x = np.arange( 0.1, 5, 0.2 ) 5 y1 = np.log( x ) 6 y2 = np.sqrt( x ) 7 y3 = np.exp( x ) 8 9 plt.plot( x, y1, "r ", x, y2, "bs", x, y3, "g^" ) 10 plt.ylabel( "Y" ) 11 plt.xlabel( "X" ) 12 plt.show() Y 2 1 0 1 2 0 1 2 3 4 5 X

1 # coding: utf 8 2 import matplotlib.pyplot as plt 3 import numpy as np 4 import matplotlib 5 6 matplotlib.rcparams["font.family"] = " Arial" 7 8 x = np.arange( 0.1, 5, 0.2 ) 9 y1 = np.log( x ) 10 y2 = np.sqrt( x ) 11 y3 = np.exp( x ) 12 13 plt.plot( x, y1, "r ", label = "log(x)" ) 14 plt.plot( x, y2, "bs", label = "sqrt(x)" ) 15 plt.plot( x, y3, "g^", label = "exp( x)" ) 16 plt.ylabel( "Y" ) 17 plt.xlabel( "X" ) 18 plt.title( "Przykładowe wykresy" ) 19 plt.legend( loc = "best" ) 20 plt.show()

1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 x = np.arange( 0.1, 5, 0.2 ) 5 y1 = np.log( x ) 6 y2 = np.sqrt( x ) 7 8 # tworzymy rysunek 1 9 plt.figure( 1 ) 10 11 # tworzymy podwykres 12 plt.subplot( 2, 1, 1 ) 13 plt.plot( x, y1 ) 14 plt.title( "log" ) 15 16 # tworzymy podwykres 17 plt.subplot( 2, 1, 2 ) 18 plt.plot( x, y2 ) 19 plt.title( "sqrt" ) 20 plt.grid( True ) 21 22 plt.show() 1 0 1 2 2.0 1.5 1.0 0.5 log 0 1 2 sqrt 3 4 5 0 1 2 3 4 5 Argumenty w subplot: liczba wierszy (n), liczba kolumn (m), numer wykresu (k {1, 2,..., nm}).

1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 x = np.arange( 0.1, 10, 0.2 ) 5 y1 = np.exp( x ) 6 7 plt.figure( 1 ) 8 9 plt.subplot( 2, 1, 1 ) 10 plt.plot( x, y1 ) 11 plt.title( "Skala liniowa" ) 12 13 plt.subplot( 2, 1, 2 ) 14 plt.plot( x, y1 ) 15 plt.title( "Skala logarytmiczna " ) 16 plt.yscale( "log" ) 17 18 plt.tight_layout( pad = 0.4 ) 19 20 plt.show() Skala liniowa 20000 15000 10000 5000 0 0 2 4 6 8 10 Skala logarytmiczna 10 4 10 3 10 2 10 1 10 0 0 2 4 6 8 10

1 # coding: utf 8 2 import numpy as np 3 import matplotlib.pyplot as plt 4 import matplotlib 5 6 matplotlib.rcparams["font.family"] = "Arial" 7 8 menmeans = (20, 35, 30, 35, 27) 9 menstd = (2, 3, 4, 1, 2) 10 womenmeans = (25, 32, 34, 20, 25) 11 womenstd = (3, 5, 2, 3, 3) 12 13 x = np.arange( len( menmeans ) ) 14 width = 0.35 15 16 plt.bar( x, menmeans, width, color = "r", yerr = menstd, label = "Mężczyzni" ) 17 plt.bar( x + width, womenmeans, width, color = y, yerr = womenstd, label = " Kobiety" ) 18 19 plt.ylabel( "Wynik" ) 20 plt.title( "Wyniki według grup i płci" ) 21 plt.xticks( x + width/2.0, ("G1", "G2", "G3", "G4", "G5") ) 22 plt.legend( loc = "best" ) 23 24 plt.show()

1 # coding: utf 8 2 import numpy as np 3 import matplotlib.pyplot as plt 4 import matplotlib 5 6 matplotlib.rcparams["font.family"] = " Arial" 7 8 bins = 50 # liczba,,kubelkow 9 mu = 100 # srednia 10 sigma = 15 # odchylenie standardowe 11 x = mu + sigma np.random.randn( 10000 ) # dane 12 13 plt.hist( x, bins, density = True, facecolor = green, edgecolor = black ) 14 15 plt.xlabel( "X" ) 16 plt.ylabel( "Prawdopodobieństwo" ) 17 plt.title( r"dane o rozkładzie: $\mu = 100$, $\sigma = 15$" ) 18 19 plt.show() = 100 = 15

1 import matplotlib.pyplot as plt 2 3 labels = ["Frogs", "Hogs", " Dogs", "Logs"] 4 sizes = [15, 30, 45, 10] 5 colors = ["yellowgreen", "gold", "lightskyblue", " lightcoral"] 6 explode = (0, 0.1, 0, 0) # tylko 2 wycienek zostanie odsuniety 7 8 plt.pie( sizes, explode = explode, labels = labels, colors = colors, autopct = "%1.1f%%", shadow = True ) 9 10 plt.axis( "equal" ) 11 12 plt.show() Hogs 30.0% 45.0% Dogs 15.0% 10.0% Frogs Logs

90 1 import numpy as np 2 import matplotlib.pyplot as plt 135 45 3 4 r = np.arange( 0, 3.0, 0.01 ) 5 theta = 2.0 np.pi r 6 7 plt.polar( theta, r ) 8 9 plt.show() 180 225 2.5 3.0 2.0 1.5 1.0 0.5 315 0 270

1 import numpy as np 2 import matplotlib.pyplot as plt 3 4 def f(x,y): 5 return (1 x / 2 + x 5 + y 3) np.exp( x 2 y 2) 6 7 n = 10 8 x = np.linspace( 3, 3, 4 n ) 9 y = np.linspace( 3, 3, 4 n ) 10 X, Y = np.meshgrid( x, y ) 11 12 plt.imshow( f(x, Y), cmap = " jet" ) 13 plt.colorbar() 14 15 plt.xticks( [] ) 16 plt.yticks( [] ) 17 18 plt.show() 1.0 0.8 0.6 0.4 0.2 0.0 0.2 0.4 0.6