Bonjour,
Voilà je vous explique. Mon but est de superposer un histogramme avec avec une courbe afin de voir la valeur de certains paramètre dans une distribution donnée... bref je vous passe les détails.
Le truc c'est que je crée d'abord l'histogramme, puis la courbe (en faisant un "twinx()" pour avoir un second axe sur la droite).
Jusqu'ici tout va bien. cependant j'ai plusieurs paramètres à plotter. Donc, plutôt que de TOUT effacer à chaque fois et tout refaire, je me demandais s'il était possible d'effacer juste le plot et pas l'histogramme. Mon code ressemble "à peu près" à ça:
Comment effacer la seconde partie et en réécrire une autre ? ça me permettrait de mettre une boucle for ou while sans tout refaire et recalculer à chaque fois...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 #initialisation fig=plt.figure();keys=paramlist.keys();l=len(keys) #hitogramme a1x = fig.add_subplot(111) a1x.hist(paramlist.values(),binlist,label=keys) plt.legend() if is_log: plt.xscale('log') plt.xlabel("Mass in terrestrial mass") a1x.set_ylabel("number of models") plt.title(title) #plot x,y,var=simulist.make_mean_paramlist(binlist,paramlist) # ca me crée mon x,y et ma variance sur y ax2 = a1x.twinx() # ax2.plot(x, y, 'r.') ax2.errorbar(x,y,yerr=var,fmt=None, marker=None, mew=0 ) ax2.set_ylabel('blabla', color='r') for tl in ax2.get_yticklabels(): tl.set_color('r') plt.savefig(nameplot)
merci
Partager