Matplotlib.pyplot.subplots() v Pythone

Matplotlib.pyplot.subplots() v Pythone

Matplotlib je knižnica v Pythone a je to numericko-matematické rozšírenie pre NumPy knižnica. Pyplot je stavové rozhranie k modulu Matplotlib, ktoré poskytuje rozhranie podobné MATLABu. subplots()> funkcia v Pythone zjednodušuje vytváranie viacerých čiastkových grafov Matplotlib v rámci jedného obrázku, čo umožňuje organizovanú a súčasnú vizualizáciu rôznych súborov údajov alebo grafov.

Príklad:

Tu je príklad jednoduchého Python kód na vykreslenie grafu pomocou Knižnica Matplotlib .

Python3




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

Výkon:

Jednoduchý graf pomocou Pythonu matplotlib

Graf pomocou Pythonu matplotlib

Matplotlib subplots() Syntax

The funkcia subplots(). v Modul Pyplot knižnice Matplotlib sa používa na vytvorenie figúry a sady podzákresov.

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

Parametre: Táto metóda akceptuje nasledujúce parametre, ktoré sú popísané nižšie:

  • nrows, ncols: Tieto parametre predstavujú počet riadkov/stĺpcov mriežky podkreslenia.
  • sharex, sharey : Tento parameter riadi zdieľanie vlastností medzi osami x (sharex) alebo y (sharey).
  • stlačiť: Tento parameter je voliteľný parameter a obsahuje boolovskú hodnotu s predvolenou hodnotou True.
  • na jeden: Tento parameter je kľúčové slovo pyplot.figure, ktoré nastavuje číslo obrázka alebo označenie.
  • subplot_kwd: Tento parameter je diktát s kľúčovými slovami odovzdanými do volania add_subplot, ktoré sa používa na vytvorenie každého čiastkového grafu.
  • gridspec_kw: Tento parameter je diktát s kľúčovými slovami odovzdanými do konštruktora GridSpec, ktorý sa používa na vytvorenie mriežky, na ktorú sú umiestnené podplochy.

Vrátenie: Táto metóda vráti nasledujúce hodnoty.

  • obr: Táto metóda vráti rozloženie obrázku.
  • sekera: Táto metóda vráti objekt axes.Axes alebo pole objektov Axes.

Python Subplots Príklad Matplotlib

V tomto príklade vytvoríme jednoduchý graf pomocou funkcie subplots() v 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()>

Výkon:

príklad funkcie matplotlib.pyplot.subplots().

príklad funkcie matplotlib.pyplot.subplots().

Zobrazenie viacerých grafov pomocou subplots()

Funkcia Matplotlib subplots() nám umožňuje vykresliť viacero grafov pomocou rovnakých údajov alebo osi. Pozrime sa na niekoľko príkladov pre lepšie pochopenie:

Stohovanie podzápletiek v jednom smere

V tomto príklade vykreslíme dva grafy, ktoré zdieľajú os y. Parametre nrows a ncols sú nastavené na 1 a 2, čo znamená, že graf bude mať 1 riadok a 2 stĺpce alebo 2 podplochy. K týmto podzákresom môžeme pristupovať pomocou indexu [0] a [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()>

Výkon:

Skladanie podzápletiek v jednom smere

Skladanie podzápletiek v jednom smere

Skladanie podzápletiek v dvoch smeroch

Tento príklad je podobný predchádzajúcemu. Jediný rozdiel je v tom, že sme poskytli hodnoty nrows a ncols na 2. To znamená, že graf je rozdelený na 2 riadky a 2 stĺpce, čo nám dáva celkovo 4 podploty matplotlib. K týmto grafom môžeme pristupovať pomocou indexu.

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

Výkon:

Skladanie podzápletiek v dvoch smeroch

Skladanie podzápletiek v dvoch smeroch

Zdieľaná os

V tomto príklade vykreslíme grafy, ktoré zdieľajú rovnakú os. Vytvoríme grafy, ktoré budú zdieľať os y a štítok, ale budú mať vlastnú os x a štítok. Dá sa to dosiahnuť odovzdaním hodnoty parametru „num“ funkcie subplot(). Parameter „sharex“ je nastavený na hodnotu True, čo znamená, že vytvorené grafy budú medzi sebou zdieľať os X.

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

Výkon:

Podplochy so zdieľanou osou

Podplochy so zdieľanou osou

Polárna os

V tomto príklade vykreslíme grafy pomocou polárnych súradníc. Parameter subplot_kw funkcie subplot() má v slovníku hodnotu projekcie nastavenú na „polárnu“, ktorá hovorí funkcii subplot() na vytvorenie polárneho grafu.

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

Výkon:

príklad funkcie matplotlib.pyplot.subplots().

príklad funkcie matplotlib.pyplot.subplots().