Programmeurs gebruiken plot vaak voor het tekenen van punten in diagrammen. De plot () functie creëert standaard een lijn die begint in een punt en eindigt in een ander punt. Deze functie houdt rekening met parameters om de punten van het diagram te bepalen. De X-as bevat de punten voor parameter 1 en de Y-as bevat de punten voor parameter 2.
U kunt meer dan één grafiek in één plot situeren op 2 manieren in Matplotlib. De subplot () functie kan helpen om één grafiek te maken, terwijl je de tweede kunt maken door het op de eerste te leggen, wat betekent dat elke grafiek aanwezig zal zijn op één plot. Lees verder om te leren hoe u meerdere plots kunt plotten in Matplotlib.
Gebruik van de Subplot () functie voor het maken van meervoudige plots
De Subplot () functie is in essentie een wrapper functie om programmeurs te helpen meerdere grafieken in één fixture te plotten. Wat deze functie zo handig maakt, is het feit dat programmeurs ze slechts één keer hoeven aan te roepen.
Syntax
matplotlib.pyplot.subplots(nrows=1, ncols=1, sharex=False, sharey=False, squeeze=True, subplot_kw=None, gridspec_kw=None, **fig_kw)
Parameters
nrows, ncols
Met behulp van deze parameters kan men het precieze aantal kolommen en rijen bepalen. Het is ook de moeite waard om te onthouden dat het gebruik van deze parameters volledig optioneel is. De standaardwaarde van deze parameters is 1.
sharex, sharey
sharex en sharey zijn van vitaal belang voor het bepalen van de eigenschappen die gedeeld worden tussen de y-as en de a-as. Hun waarschijnlijke waarden kunnen zijn: none, col, row. Anders is er altijd de standaardwaarde, aangeduid als False.
squeeze
In tegenstelling tot andere waarden is dit in wezen een Booleaanse waarde die de programmeur vraagt of hij moet uitknijpen, dat wil zeggen de extra dimensie in de matrix elimineren. De standaardwaarde van squeeze is False.
subplot_kw
Met behulp van deze parameter kunnen programmeurs trefwoorden toevoegen aan elke subplot. De standaardwaarde van deze parameter is None.
gridspec_kw
Het gebruik van deze parameter helpt bij het toevoegen van rasters aan elke subplot. Ook hier is de standaardwaarde van deze parameter Geen.
fig_kw
Het gebruik van de parameter fig_kw stelt programmeurs in staat om extra sleutelwoordargumenten toe te voegen in de functieaanroep. De standaardwaarde van deze parameter is ook None.
Matplotlib heeft een functie die heel wat gelijkenissen vertoont met subplot. Deze functie wordt subplot2grid() genoemd. In hun kern zijn deze functie en subplot bijna hetzelfde, maar subplot2grid() biedt meer flexibiliteit als het aankomt op het organiseren van plot-objecten in overeenstemming met de behoeften van de programmeur.
Hier is hoe deze functie geschreven is:
Syntax
matplotlib.pyplot.subplot2grid(shape, loc, rowspan=1, colspan=1, fig=None, **kwargs)
Parameter
shape
De shape parameter is in essentie een sequentie die 2 integer waarden bevat die ons helpen de vorm van het raster te bepalen. Dit is waar de assen moeten worden geplaatst. De eerste ingang wordt gebruikt voor de rij, terwijl de tweede er is voor de kolom.
Ioc
Net als de vormparameter heeft ook Ioc een reeks van 2 gehele waarden. In deze reeks is de eerste ingang voor de rij en de tweede voor de kolom om de as in het raster te plaatsen.
rowspan
De parameter rowspan gebruikt de gehele waarde samen met het getal dat het aantal rijen aangeeft dat de as nodig heeft om te vergroten of over te spannen naar de rechterkant.
colspan
In tegenstelling tot de parameter rowspan, gebruikt de parameter colspan de gehele waarde samen met het getal dat het totale aantal kolommen aangeeft dat de as nodig zal hebben om in neerwaartse richting te vergroten.
fig
De fig parameter is geheel optioneel en gebruikt Figure om de as in te plaatsen. Het is ook goed om te onthouden dat fig standaard de huidige figuur is.
Kwargs
Kwargs helpt programmeurs om extra sleutelwoord-argumenten door te geven aan de functie-aanroep. De standaardwaarde van deze parameter is Geen.
Een plot maken binnen dezelfde plot
Tot nu toe hebben we de basisprincipes van Matplotlib besproken en het gebruik van subplot om meer dan één groep te creëren via de subplot2grid en subplot grid bibliotheek. Laat ons nu bespreken hoe we subplots kunnen compileren in één en meerdere richtingen.
Subplots compileren in één richting
De twee niet-verplichte pyplot.subplots argumenten definiëren het aantal kolommen en rijen aanwezig in het subplot raster. Wanneer men slechts in één richting wil stapelen, is de axs in wezen een1D NumPy array die de inventaris van Axes bevat.
Subplots in twee richtingen stapelen
De geretourneerde axs wanneer in twee richtingen wordt gestapeld, is een 2D NumPy array. Wie van plan is om voor elke subplot parameters aan te maken, kan best elke subplot itereren met behulp van een tweedimensionaal rooster door voor ax in axs.flat:
Assen delen
Elke as wordt standaard individueel geschaald. Daarom zullen de tekenwaarden van subplots niet goed op één lijn liggen als de bereiken niet gelijk zijn. Door sharey of sharex op True te zetten wordt globaal delen geactiveerd in het gehele raster, wat betekent dat de y-assen van verticaal gestapelde subplots dezelfde schaal delen als ze sharey=True gebruiken.
Slechts één tick label set is meer dan genoeg als het gaat om het delen van assen in subplots. Wat de binnenste assen betreft, hun tick labels worden automatisch verwijderd door sharey en sharex. Er blijft echter nog een lege ongebruikte ruimte over tussen de subplots.
Als u de positionering van de subplots op de juiste manier wilt regelen, kunt u het beste een GridSpec gebruiken met Figure.add_gridspec en vervolgens de subplots techniek gebruiken. Men kan bijvoorbeeld de hoogte van de verticale subplot minimaliseren door gebruik te maken van add_gridspec(hspace=0).label_outer. Dit is een ongelooflijk handige methode om vinkjes en labels te verwijderen uit subplots die zich niet aan de rand van het raster bevinden.
Naast True en False, accepteren sharey en sharex alleen ‘col’ en ‘row’ waarden per kolom of rij. In het geval dat u van plan bent om een meer complexe structuur voor delen te maken, kunt u het beste een assenraster maken zonder delen en dan gebruik maken van axes.Axes.sharex of axes.Axes.sharey.
Het maken van meerdere plots in Matplotlib kan lastig zijn als men niet voldoende kennis heeft van de grondbeginselen, de juiste syntaxis en parameters. De informatie die in dit stuk wordt besproken, zal u echter helpen om op de juiste manier te plotten in Matplotlib, zodat u ook met relatief gemak meerdere plots kunt maken.