Matplotlib.pyplot.subplots() i Python

Matplotlib.pyplot.subplots() i Python

Matplotlib er et bibliotek i Python og det er en numerisk-matematisk utvidelse for NumPy bibliotek. Pyplot er et tilstandsbasert grensesnitt til en Matplotlib-modul som gir et MATLAB-lignende grensesnitt. subplots()> funksjonen i Python forenkler opprettelsen av flere underplott Matplotlib innenfor en enkelt figur, noe som muliggjør organisert og samtidig visualisering av ulike datasett eller plott.

Eksempel:

Her er et eksempel på en enkel Python kode for å plotte en graf ved hjelp av Matplotlib bibliotek .

Python3




# sample code> import> matplotlib.pyplot as plt> > plt.plot([> 1> ,> 2> ,> 3> ,> 4> ], [> 16> ,> 4> ,> 1> ,> 8> ])> plt.show()>

Produksjon:

Enkelt plott med Python matplotlib

Plott ved hjelp av Python matplotlib

Matplotlib subplots() Syntaks

De subplots() funksjon i Pyplot-modul av Matplotlib-biblioteket brukes til å lage en figur og et sett med underplott.

Syntaks: matplotlib.pyplot.subplots(nrows=1, ncols=1, sharex=False, sharey=False, squeeze=True, subplot_kw=Ingen, gridspec_kw=Ingen, **fig_kw)

Parametere: Denne metoden godtar følgende parametere som er beskrevet nedenfor:

  • nrows, ncols: Disse parameterne er antall rader/kolonner i delplottrutenettet.
  • sharex, sharey: Denne parameteren kontrollerer deling av egenskaper mellom x (sharex) eller y (sharey) akser.
  • klemme: Denne parameteren er en valgfri parameter, og den inneholder boolsk verdi med standardverdien True.
  • på en: Denne parameteren er nøkkelordet pyplot.figure som setter figurnummeret eller etiketten.
  • subplot_kwd: Denne parameteren er diktet med nøkkelord som sendes til add_subplot-kallet som brukes til å lage hvert subplot.
  • gridspec_kw: Denne parameteren er diktet med nøkkelord sendt til GridSpec-konstruktøren som brukes til å lage rutenettet underplottene er plassert på.

Returnerer: Denne metoden returnerer følgende verdier.

  • Fig : Denne metoden returnerer figuroppsettet.
  • øks: Denne metoden returnerer aksene.Axes-objektet eller en rekke akseobjekter.

Python Subplots Matplotlib Eksempel

I dette eksemplet vil vi lage et enkelt plott ved å bruke subplots()-funksjonen i 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()>

Produksjon:

matplotlib.pyplot.subplots() funksjonseksempel

eksempel på funksjonen matplotlib.pyplot.subplots()

Vise flere plott ved hjelp av subplot()

Matplotlib subplots() funksjon lar oss plotte flere plott ved å bruke samme data eller aksen. La oss se noen eksempler for en bedre forståelse:

Stable underplott i én retning

I dette eksemplet vil vi plotte to plott som deler y-aksen. Parameterne for nrows og ncols er satt til henholdsvis 1 og 2, noe som betyr at plottet vil ha 1 rad og 2 kolonner eller 2 subplot. Vi kan få tilgang til disse underplottene ved å bruke indeksen [0] og [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()>

Produksjon:

Stable underplott i én retning

Stable underplott i én retning

Stable underplott i to retninger

Dette eksemplet ligner det forrige. Den eneste forskjellen er at vi ga verdiene til nrows og ncols til 2. Dette betyr at plottet er delt inn i 2 rader og 2 kolonner som gir oss totalt 4 subplot matplotlib. Vi kan få tilgang til disse plottene ved å bruke indeksen.

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()>

Produksjon:

Stable underplott i to retninger

Stable delplott i to retninger

Delingsakse

I dette eksemplet vil vi plotte grafene som deler samme akse. Vi vil lage plott som vil dele y-aksen og etiketten, men vil ha sin egen x-akse og etikett. Dette kan gjøres ved å sende en verdi til 'num'-parameteren til subplot()-funksjonen. 'sharex'-parameteren er satt til True, noe som betyr at plottene som er opprettet vil dele X-aksen mellom seg.

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()>

Produksjon:

Delplott med delt akse

Delplott med delt akse

Polaraksen

I dette eksemplet vil vi plotte grafene ved å bruke de polare koordinatene. Subplot_kw-parameteren til subplot()-funksjonen er gitt en ordbokverdi for projeksjon satt til 'polar' som forteller subplot()-funksjonen å lage en polar graf.

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()>

Produksjon:

eksempel på funksjonen matplotlib.pyplot.subplots()

matplotlib.pyplot.subplots() funksjonseksempel