Comment dois-je dire à Matplotlib pour créer un deuxième (nouveau) de la parcelle, puis plus tard sur la parcelle de l'ancienne?
Je veux tracer des données, puis créer un nouveau personnage et de l'intrigue data2, et enfin revenir à l'origine de l'intrigue et de l'intrigue data3, un peu comme ceci:
import numpy as np
import matplotlib as plt
x = arange(5)
y = np.exp(5)
plt.figure()
plt.plot(x, y)
z = np.sin(x)
plt.figure()
plt.plot(x, z)
w = np.cos(x)
plt.figure("""first figure""") # Here's the part I need
plt.plot(x, w)
FYI Comment dois-je dire à matplotlib que je suis fait avec une intrigue? fait quelque chose de similaire, mais pas tout à fait! Il ne me laisse pas avoir accès à cette parcelle d'origine.
Vous devez vous connecter pour publier un commentaire.
Si vous vous retrouver à faire des choses comme ça régulièrement, il peut être la peine d'enquêter sur l'interface orientée objet pour matplotlib. Dans votre cas:
C'est un peu plus détaillé, mais il est beaucoup plus claire et plus facile à suivre, surtout avec plusieurs personnages, chacun avec plusieurs intrigues secondaires.
ax1.ylabel
il dit qu'il n'est pas trouvé. Même avecfig1.ylabel
...ax1.set_xlabel("your x label")
,ax1.set_ylabel("your y label")
, etax1.set_title("your title")
.plt.subplots(nrows, ncols)
. Ont mis à jour l'exemple.Lorsque vous appelez
figure
, simplement le numéro de la parcelle.Edit: Notez que vous pouvez nombre de parcelles toutefois vous souhaitez (ici, à partir de
0
), mais si vous ne fournissez pas de chiffre à un nombre à tous les lorsque vous en créez un nouveau, la numérotation automatique va commencer à1
("Matlab Style" selon les docs).figure
, que vous avez retirée. Les autres choses que vous avez modifié ont été copiés à partir de l'original post et non des erreurs dans ma réponse.1
à l'intérieur deplt.figure(1)
parce que je pensais que le nombre est auto incrémenté et n'est donc pas nécessaire. Désolé.Cependant, la numérotation commence à
1
, donc:Aussi, si vous avez plusieurs axes sur une figure, comme les intrigues secondaires, l'utilisation de la
axes(h)
de commande oùh
est le handle de la désirée axes objet de se concentrer sur les axes.(ne pas avoir de commentaire privilèges encore, désolé pour la réponse!)
0
œuvres, automatique numérotation juste commencer à1
, si vous ne lui donnez pas un numéro à tous.Une façon que j'ai trouvée après quelques difficulté est de créer une fonction qui arrive data_plot matrice de fichier, nom de fichier et l'ordre en tant que paramètre pour créer boxplots des données données dans la figure (différentes commandes = des chiffres différents) et de l'enregistrer sous le file_name.