web-dev-qa-db-fra.com

Graphique de contour en python

Comment pourrais-je créer une grille de comptage en python en utilisant matplotlib.pyplot, où la grille est d'une couleur où la variable z est inférieure à zéro et une autre lorsque z est égale ou supérieure à zéro? Je ne suis pas très familier avec matplotlib donc si quelqu'un peut me donner un moyen simple de le faire, ce serait génial.

Jusqu'à présent, j'ai:

x= np.arange(0,361)
y= np.arange(0,91)

X,Y = np.meshgrid(x,y)

area = funcarea(L,D,H,W,X,Y) #L,D,H and W are all constants defined elsewhere.

plt.figure()
plt.contourf(X,Y,area)
plt.show()
14
apkdsmith

Vous pouvez le faire en utilisant le mot clé levels dans contourf.

enter image description here

import numpy as np
import matplotlib.pyplot as plt

fig, axs = plt.subplots(1,2)

x = np.linspace(0, 1, 100)
X, Y = np.meshgrid(x, x)
Z = np.sin(X)*np.sin(Y)

levels = np.linspace(-1, 1, 40)

zdata = np.sin(8*X)*np.sin(8*Y)

cs = axs[0].contourf(X, Y, zdata, levels=levels)
fig.colorbar(cs, ax=axs[0], format="%.2f")

cs = axs[1].contourf(X, Y, zdata, levels=[-1,0,1])
fig.colorbar(cs, ax=axs[1])

plt.show()

Vous pouvez changer les couleurs en choisissant et différent palette de couleurs ; en utilisant vmin, vmax; etc.

38
tom10