matplotlib.axes.Axes.contourf #

Assi. contourf ( * args , data = None , ** kwargs ) [fonte] #

Traccia i contorni riempiti.

Firma chiamata:

contourf([X, Y,] Z, [levels], **kwargs)

contoure contourfdisegnare rispettivamente linee di contorno e contorni riempiti. Ad eccezione di quanto indicato, le firme delle funzioni ei valori restituiti sono gli stessi per entrambe le versioni.

Parametri :
X, Y simile a un array, facoltativo

Le coordinate dei valori in Z .

X e Y devono essere entrambi 2D con la stessa forma di Z (ad es. creati tramite numpy.meshgrid), oppure devono essere entrambi 1-D tale che è il numero di colonne in Z ed è il numero di righe in Z .len(X) == Nlen(Y) == M

X e Y devono essere entrambi ordinati in modo monotono.

Se non dati, si assume che siano indici interi, cioè , .X = range(N)Y = range(M)

Z (M, N) simile a un array

I valori di altezza su cui viene disegnato il contorno. La mappatura dei colori è controllata da cmap , norm , vmin e vmax .

livelli int o simile a un array, facoltativo

Determina il numero e le posizioni delle linee di contorno/aree.

Se un int n , usa MaxNLocator, che tenta di scegliere automaticamente non più di n+1 livelli di contorno "buoni" tra vmin e vmax .

Se simile a una matrice, disegna linee di contorno ai livelli specificati. I valori devono essere in ordine crescente.

Resi :
QuadContourSet
Altri parametri :
corner_mask bool, predefinito: rcParams["contour.corner_mask"](predefinito: True)

Abilita/disabilita il mascheramento degli angoli, che ha effetto solo se Z è un array mascherato. Se False, qualsiasi quad che tocca un punto mascherato viene mascherato. Se True, solo gli angoli triangolari dei quad più vicini a questi punti sono sempre mascherati, gli altri angoli triangolari comprendenti tre punti non mascherati vengono sagomati come di consueto.

colors stringa di colori o sequenza di colori, facoltativo

I colori dei livelli, cioè le linee per contoure le aree per contourf.

La sequenza viene ciclata per i livelli in ordine crescente. Se la sequenza è più breve del numero di livelli, viene ripetuta.

Come scorciatoia, si possono usare stringhe di un solo colore al posto di elenchi di un elemento, cioè 'red'invece di ['red']colorare tutti i livelli con lo stesso colore. Questa scorciatoia funziona solo per le stringhe di colore, non per altri modi di specificare i colori.

Per impostazione predefinita (valore None ), verrà utilizzata la mappa colori specificata da cmap .

alfa float, predefinito: 1

Il valore di fusione alfa, compreso tra 0 (trasparente) e 1 (opaco).

cmap str o Colormap, predefinito: rcParams["image.cmap"](predefinito: 'viridis')

L'istanza Colormap o il nome registrato della mappa colori utilizzato per mappare i dati scalari ai colori.

Questo parametro viene ignorato se i colori sono impostati.

norm str o Normalize, facoltativo

Il metodo di normalizzazione utilizzato per ridimensionare i dati scalari nell'intervallo [0, 1] prima della mappatura ai colori utilizzando cmap . Per impostazione predefinita, viene utilizzato un ridimensionamento lineare, mappando il valore più basso su 0 e il più alto su 1.

Se indicato, può essere uno dei seguenti:

  • Un'istanza di Normalizeo una delle sue sottoclassi (vedere Normalizzazione della mappa dei colori ).

  • Un nome di scala, ad esempio "linear", "log", "symlog", "logit", ecc. Per un elenco delle scale disponibili, chiamare matplotlib.scale.get_scale_names(). NormalizeIn tal caso, una sottoclasse adatta viene generata dinamicamente e istanziata.

Questo parametro viene ignorato se i colori sono impostati.

vmin, vmax float, facoltativo

Quando si utilizzano dati scalari e nessuna norma esplicita , vmin e vmax definiscono l'intervallo di dati coperto dalla mappa dei colori. Per impostazione predefinita, la mappa dei colori copre l'intero intervallo di valori dei dati forniti. È un errore utilizzare vmin / vmax quando viene fornita un'istanza di norma (ma l'utilizzo di un nome di norma insieme a vmin / vmax è accettabile).str

Se vmin o vmax non sono specificati, il ridimensionamento del colore predefinito è basato su livelli .

Questo parametro viene ignorato se i colori sono impostati.

origin { Nessuno , 'superiore', 'inferiore', 'immagine'}, predefinito: Nessuno

Determina l'orientamento e la posizione esatta di Z specificando la posizione di . Questo è rilevante solo se X , Y non sono dati.Z[0, 0]

  • Nessuno : è in X=0, Y=0 nell'angolo in basso a sinistra.Z[0, 0]

  • 'inferiore': è in X=0.5, Y=0.5 nell'angolo in basso a sinistra.Z[0, 0]

  • 'superiore': è in X=N+0.5, Y=0.5 nell'angolo in alto a sinistra.Z[0, 0]

  • 'image': utilizza il valore da rcParams["image.origin"](predefinito: 'upper').

estensione (x0, x1, y0, y1), opzionale

Se origin non è None , extent viene interpretato come in imshow: fornisce i limiti dei pixel esterni. In questo caso, la posizione di Z[0, 0] è il centro del pixel, non un angolo. Se origin è None , allora ( x0 , y0 ) è la posizione di Z[0, 0] e ( x1 , y1 ) è la posizione di Z[-1, -1].

Questo argomento viene ignorato se X e Y sono specificati nella chiamata a contour.

locator ticker.Locator sottoclasse, facoltativo

Il localizzatore viene utilizzato per determinare i livelli di contorno se non vengono forniti esplicitamente tramite i livelli . Il valore predefinito è MaxNLocator.

extend {'nessuno', 'entrambi', 'min', 'max'}, default: 'nessuno'

Determina la contourfcolorazione dei valori che non rientrano nell'intervallo dei livelli .

Se "nessuno dei due", i valori al di fuori dell'intervallo dei livelli non sono colorati. Se 'min', 'max' o 'entrambi', colora i valori sotto, sopra o sotto e sopra l' intervallo dei livelli .

I valori al di sotto min(levels)e al di sopra max(levels)sono mappati ai valori under/over di Colormap. Si noti che la maggior parte delle mappe di colori non ha colori dedicati per questi per impostazione predefinita, in modo che i valori sopra e sotto siano i valori del bordo della mappa di colori. Potresti voler impostare questi valori in modo esplicito usando Colormap.set_undere Colormap.set_over.

Nota

Un esistente QuadContourSetnon viene avvisato se le proprietà della sua mappa dei colori vengono modificate. Pertanto, è necessaria una chiamata esplicita QuadContourSet.changed()dopo aver modificato la mappa dei colori. La chiamata esplicita può essere tralasciata, se una barra dei colori è assegnata a QuadContourSetperché chiama internamente QuadContourSet.changed().

Esempio:

x = np.arange(1, 10)
y = x.reshape(-1, 1)
h = x * y

cs = plt.contourf(h, levels=[10, 30, 50],
    colors=['#808080', '#A0A0A0', '#C0C0C0'], extend='both')
cs.cmap.set_over('red')
cs.cmap.set_under('blue')
cs.changed()
xunits, yunits unità registrate, facoltativo

Sostituisci le unità dell'asse specificando un'istanza di un file matplotlib.units.ConversionInterface.

bool antialiased , facoltativo

Abilita l'antialiasing, sovrascrivendo le impostazioni predefinite. Per i contorni riempiti, l'impostazione predefinita è True . Per i contorni delle linee, viene preso da rcParams["lines.antialiased"](predefinito: True).

nchunk int >= 0, facoltativo

Se 0, nessuna suddivisione del dominio. Specificare un numero intero positivo per dividere il dominio in sottodomini di nchunk per nchunk quadrupli. Chunking riduce la lunghezza massima dei poligoni generati dall'algoritmo di contouring che riduce il carico di lavoro di rendering passato al back-end e richiede anche un po' meno RAM. Può tuttavia introdurre artefatti di rendering ai limiti del blocco a seconda del back-end, del flag antialias e del valore di alpha .

linewidths float o simile ad un array, default: rcParams["contour.linewidth"](default: None)

Si applica solo a contour .

La larghezza della linea delle curve di livello.

Se è un numero, tutti i livelli verranno tracciati con questa larghezza di riga.

Se una sequenza, i livelli in ordine crescente verranno tracciati con le larghezze di riga nell'ordine specificato.

Se None, ritorna a rcParams["lines.linewidth"](predefinito: 1.5).

stili di linea { Nessuno , 'solido', 'tratteggiato', 'dashdot', 'punteggiato'}, facoltativo

Si applica solo a contour .

Se linestyles è None , l'impostazione predefinita è 'solid' a meno che le linee non siano monocromatiche. In tal caso, i contorni negativi prenderanno invece il loro stile di linea dall'argomento negative_linestyles .

linestyles può anche essere un iterabile delle stringhe precedenti specificando un insieme di linestyles da usare. Se questo iterabile è più breve del numero di livelli di contorno, verrà ripetuto se necessario.

negative_linestyles { Nessuno , 'solido', 'tratteggiato', 'dashdot', 'punteggiato'}, facoltativo

Si applica solo a contour .

Se linestyles è None e le linee sono monocromatiche, questo argomento specifica lo stile della linea per i contorni negativi.

Se negative_linestyles è None , il valore predefinito viene preso da rcParams["contour.negative_linestyles"].

negative_linestyles può anche essere un iterabile delle stringhe precedenti specificando un insieme di stili di linea da utilizzare. Se questo iterabile è più breve del numero di livelli di contorno, verrà ripetuto se necessario.

lista dei tratteggi [str], facoltativo

Si applica solo a contourf .

Un elenco di modelli di tratteggio incrociato da utilizzare sulle aree riempite. Se Nessuno, non verrà aggiunto alcun tratteggio al contorno. Il tratteggio è supportato solo nei backend PostScript, PDF, SVG e Agg.

algoritmo {'mpl2005', 'mpl2014', 'serial', 'threaded'}, facoltativo

Quale algoritmo di contornatura utilizzare per calcolare le curve di livello e i poligoni. Gli algoritmi sono implementati in ContourPy , consultare la documentazione di ContourPy per ulteriori informazioni.

Il valore predefinito è preso da rcParams["contour.algorithm"](default: 'mpl2014').

oggetto indicizzabile dei dati , facoltativo

Se fornito, tutti i parametri accettano anche una stringa s, che viene interpretata come data[s](a meno che ciò non sollevi un'eccezione).

Appunti

  1. contourfdifferisce dalla versione MATLAB in quanto non disegna i bordi del poligono. Per disegnare i bordi, aggiungi i contorni delle linee con le chiamate a contour.

  2. contourfriempie gli intervalli chiusi in alto; ovvero, per i limiti z1 e z2 , l'area piena è:

    z1 < Z <= z2
    

    ad eccezione dell'intervallo più basso, che è chiuso su entrambi i lati (cioè include il valore più basso).

  3. contoure contourfutilizzare un algoritmo dei quadrati in marcia per calcolare le posizioni dei contorni. Ulteriori informazioni sono disponibili nella documentazione di ContourPy .

Esempi che utilizzano matplotlib.axes.Axes.contourf#

Maschera angolo contorno

Maschera angolo contorno

Maschera angolo contorno
Demo contorno

Demo contorno

Demo contorno
Tratteggio contorno

Tratteggio contorno

Tratteggio contorno
Scala dei colori di contorno e registro

Scala dei colori di contorno e registro

Scala dei colori di contorno e registro
Contour plot di dati spaziati irregolarmente

Contour plot di dati spaziati irregolarmente

Contour plot di dati spaziati irregolarmente
pcolormesh

pcolormesh

pcolormesh
Grafico della superficie della scatola 3D

Grafico della superficie della scatola 3D

Grafico della superficie della scatola 3D
Contorni riempiti

Contorni riempiti

Contorni riempiti
Proiezione di un contorno pieno su un grafico

Proiezione di un contorno pieno su un grafico

Proiezione di un contorno pieno su un grafico
contornof(X, Y, Z)

contornof(X, Y, Z)

contornof(X, Y, Z)