Matplotlib.pyplot.subplots() Python
Matplotlib yra Python biblioteka ir yra skaitinis-matematinis plėtinys NumPy biblioteka. Pyplot yra būsenos sąsaja su Matplotlib moduliu, kuris suteikia į MATLAB panašią sąsają. subplots()> „Python“ funkcija supaprastina kelių „Matplotlib“ dalių kūrimą vienoje figūroje, leidžiančią organizuoti ir vienu metu vizualizuoti įvairius duomenų rinkinius ar brėžinius.
Pavyzdys:
Štai paprastas pavyzdys Python kodas grafiko brėžimui naudojant Matplotlib biblioteka .
Python3
# sample code> import> matplotlib.pyplot as plt> > plt.plot([> 1> ,> 2> ,> 3> ,> 4> ], [> 16> ,> 4> ,> 1> ,> 8> ])> plt.show()> |
Išvestis:
Nubraižykite naudodami Python matplotlib
Matplotlib subplots() Sintaksė
The subplots() funkcija viduje Pyplot modulis Matplotlib bibliotekos naudojamas figūrai ir poskyrių rinkiniui sukurti.
Sintaksė: matplotlib.pyplot.subplots(nrows=1, ncols=1, sharex=Klaidingas, sharey=Klaidingas, squeeze=Tiesa, subplot_kw=Nėra, gridspec_kw=Nėra, **fig_kw)
Parametrai: Šis metodas priima šiuos parametrus, kurie aprašyti toliau:
- nrows, ncols: Šie parametrai yra poskyrio tinklelio eilučių / stulpelių skaičius.
- sharex, sharey: Šis parametras valdo ypatybių pasidalijimą tarp x (sharex) arba y (sharey) ašių.
- suspausti: Šis parametras yra neprivalomas ir jame yra loginė reikšmė, kurios numatytoji reikšmė yra True.
- ant vieno: Šis parametras yra raktinis žodis pyplot.figure, kuris nustato figūros numerį arba etiketę.
- subplot_kwd: Šis parametras yra raktiniai žodžiai, perduodami į add_subplot iškvietimą, naudojamą kuriant kiekvieną dalį.
- gridspec_kw: Šis parametras yra raktiniai žodžiai, perduodami „GridSpec“ konstruktoriui, naudojamam tinkleliui, į kurį dedami antriniai sklypai, sukurti.
Grąžinimai: Šis metodas grąžina šias reikšmes.
- pav : Šis metodas grąžina figūros išdėstymą.
- kirvis: Šis metodas grąžina axes.Axes objektą arba Axes objektų masyvą.
Python subplots Matplotlib pavyzdys
Šiame pavyzdyje mes sukursime paprastą brėžinį naudodami funkciją subplot() matplotlib.pyplot.
Python3
# Implementation of matplotlib function> import> numpy as np> import> matplotlib.pyplot as plt> # First create some toy data:> x> => np.linspace(> 0> ,> 2> *> np.pi,> 400> )> y> => np.sin(x> *> *> 2> )> fig, ax> => plt.subplots()> ax.plot(x, y)> ax.set_title(> 'Simple plot'> )> fig.suptitle(> 'matplotlib.pyplot.subplots() Example'> )> plt.show()> |
Išvestis:
funkcijos matplotlib.pyplot.subplots() pavyzdys
Kelių brėžinių rodymas naudojant subplot()
Funkcija Matplotlib subplots() leidžia nubraižyti kelis brėžinius naudojant tuos pačius duomenis arba ašį. Pažiūrėkime kelis pavyzdžius, kad geriau suprastume:
Pakartotiniai sklypai viena kryptimi
Šiame pavyzdyje nubraižysime du brėžinius, kurie dalijasi y ašimi. Parametrai nrows ir ncols nustatomi atitinkamai į 1 ir 2, o tai reiškia, kad diagramoje bus 1 eilutė ir 2 stulpeliai arba 2 dalys. Šias dalis galime pasiekti naudodami indeksą [0] ir [1].
Python3
# Implementation of matplotlib function> import> numpy as np> import> matplotlib.pyplot as plt> # First create some toy data:> x> => np.linspace(> 0> ,> 2> *> np.pi,> 400> )> y1> => np.sin(x)> y2> => np.sin(x> *> *> 2> )> # create 2 subplots> fig, ax> => plt.subplots(nrows> => 1> , ncols> => 2> )> ax[> 0> ].plot(x, y1)> ax[> 1> ].plot(x, y2)> # plot 2 subplots> ax[> 0> ].set_title(> 'Simple plot with sin(x)'> )> ax[> 1> ].set_title(> 'Simple plot with sin(x**2)'> )> fig.suptitle(> 'Stacked subplots in one direction'> )> plt.show()> |
Išvestis:
Poskyrių krovimas viena kryptimi
Pakartotinių siužetų sudėjimas dviem kryptimis
Šis pavyzdys yra panašus į ankstesnį. Vienintelis skirtumas yra tas, kad nrows ir ncols reikšmes pateikėme 2. Tai reiškia, kad brėžinys yra padalintas į 2 eilutes ir 2 stulpelius, todėl iš viso gauname 4 matplotlib subplots. Šiuos sklypus galime pasiekti naudodami indeksą.
Python3
# Implementation of matplotlib function> import> numpy as np> import> matplotlib.pyplot as plt> # First create some toy data:> x> => np.linspace(> 0> ,> 2> *> np.pi,> 400> )> y1> => np.sin(x)> y2> => np.sin(x> *> *> 2> )> y3> => y1> *> *> 2> y4> => y2> *> *> 2> fig, ax> => plt.subplots(nrows> => 2> , ncols> => 2> )> ax[> 0> ,> 0> ].plot(x, y1, c> => 'red'> )> ax[> 0> ,> 1> ].plot(x, y2, c> => 'red'> )> ax[> 1> ,> 0> ].plot(x, y3, c> => 'blue'> )> ax[> 1> ,> 1> ].plot(x, y3, c> => 'blue'> )> ax[> 0> ,> 0> ].set_title(> 'Simple plot with sin(x)'> )> ax[> 0> ,> 1> ].set_title(> 'Simple plot with sin(x**2)'> )> ax[> 1> ,> 0> ].set_title(> 'Simple plot with sin(x)**2'> )> ax[> 1> ,> 1> ].set_title(> 'Simple plot with sin(x**2)**2'> )> fig.suptitle(> 'Stacked subplots in two direction'> )> plt.show()> |
Išvestis:
Poskyrių krovimas dviem kryptimis
Bendrinimo ašis
Šiame pavyzdyje pavaizduosime grafikus, turinčius tą pačią ašį. Sukursime sklypus, kuriuose bus bendra y ašis ir etiketė, bet turės savo x ašį ir etiketę. Tai galima padaryti perduodant reikšmę funkcijos subplot() parametrui „num“. Parametras „sharex“ nustatytas į „True“, o tai reiškia, kad sukurti sklypai dalinsis X ašimi.
Python3
# Implementation of matplotlib function> import> numpy as np> import> matplotlib.pyplot as plt> # First create some toy data:> x> => np.linspace(> 0> ,> 2> *> np.pi,> 400> )> y1> => np.sin(x)> y2> => np.sin(x> *> *> 2> )> fig, (ax1, ax2)> => plt.subplots(> 2> , sharex> => True> )> ax1.plot(x, y1, c> => 'red'> )> ax2.plot(x, y2, c> => 'red'> )> ax1.set_ylabel(> 'Simple plot with sin(x)'> )> ax2.set_ylabel(> 'Simple plot with sin(x**2)'> )> fig.suptitle(> 'Subplots with shared axis'> )> plt.show()> |
Išvestis:
Sklypai su bendra ašimi
Poliarinė ašis
Šiame pavyzdyje grafikus nubraižysime naudodami polines koordinates. Subplot() funkcijos parametrui subplot_kw suteikiama projekcijos žodyne reikšmė „polar“, kuri nurodo subplot() funkcijai sukurti polinį grafiką.
Python3
# Implementation of matplotlib function> import> numpy as np> import> matplotlib.pyplot as plt> # First create some toy data:> x> => np.linspace(> 0> ,> 1.5> *> np.pi,> 100> )> y> => np.sin(x> *> *> 2> )> +> np.cos(x> *> *> 2> )> fig, axs> => plt.subplots(nrows> => 2> , ncols> => 2> ,> > subplot_kw> => dict> (polar> => True> ))> axs[> 0> ,> 0> ].plot(x, y)> axs[> 1> ,> 1> ].scatter(x, y)> fig.suptitle(> 'matplotlib.pyplot.subplots() Example'> )> plt.show()> |
Išvestis:
funkcijos matplotlib.pyplot.subplots() pavyzdys