Exemplo n.º 1
0
	def Plot(self, *args, to_print=False, progressbar=True, **kwargs):
		if progressbar:
			from pacmanprogressbar import Pacman
			# On prépare la barre de progression :
			p = Pacman(start=0, end=len(self._frame)+1)

		for i, a in enumerate(self._frame):
			#self._plot(a, *args, **kwargs)
			# On efface le graphique précédent :
			self._ax.cla()
			#self._ax.set(**self._ax_opt)
			if self._grid:
				self._ax.grid()

			name = self.update(a, self._ax, *args, **kwargs)

			self._ax.update(self._ax_opt)

			if to_print:
				self._ax.figure.canvas.draw()

			if self._save:
				self._save_fig(self.Fig, name, self._tmp_name, "png")

			if progressbar:
				# Mise à jour de la barre de progression :
				p.progress(i)
Exemplo n.º 2
0
def PSMovieSaved(lst, filename, set_lim=True, minmax=None, format="%.4g"):
	"""Affiche l'évolution de l'espace pour une suite de fichier gadget sous forme de Film.
	lst : liste de fichier à afficher,
	set_lim=True : imposer les dimensions du graphe,
	minmax=None : Limites des axes à imposer,
	format="%.4g" : format d'affichage de l'unité de temps.
	"""

	# Quelques import spécifique à la fonction :
	from matplotlib import pyplot as plt
	from matplotlib import animation as an
	from pacmanprogressbar import Pacman

	# On prépare la barre de progression :
	p = Pacman(start=0, end=len(lst))

	# On prépare la fenêtre sur laquelle on va tracer :
	fig = plt.figure()
	ax  = fig.add_subplot(111, title = r"$\rho(r)$ of King", xlabel = r"$r$", ylabel = r"$\rho(r)$")

	# On prépare ce qui va nous permettre d'enregistrer la vidéo :

	FFMpegWriter = an.writers['imagemagick']
	metadata     = dict(title='Phase Space Evolution for Henon collapse at Viriel -0.3', artist='Guillaume Plum')
	writer       = FFMpegWriter(fps=15, metadata=metadata)

	#moviewriter = an.MencoderWriter(fps=25, metadata={'title':'Phase Space Evolution for Henon with Viriel of -0.3', 'artist':'Guillaume Plum', 'subject':'Henon Collapse'})

	# On commence l'enregistrement :
	with writer.saving(fig, filename, 100):
		for i, a in enumerate(lst):
			# On efface le graphique précédent :
			ax.cla()

			# On fixe les limites du graphiques si demandé :
			if set_lim:
				ax.set_ylim(-3000, 3000)
				ax.set_xlim(0, 70)

			# On charge l'espace des phases :
			map = ps.Map(a)

			# Titre du graphique :
			ax.set_title( "Gadget time unit : " + format%map.head["Time"])

			# Calcul des données :
			X, Y, Z = map._calc()

			# Tracé :
			ax.pcolormesh(X, Y, Z)
			#ax.figure.canvas.draw()

			# Capture du graphique par la classe créant la vidéo :
			writer.grab_frame()

			# Mise à jour de la barre de progression :
			p.progress(i)
Exemplo n.º 3
0
def PSMovie(lst, ax=None, set_lim=True, minmax=None, format="%.4g", topng=False):
	"""Affiche l'évolution de l'espace pour une suite de fichier gadget sous forme de Film.
	lst : liste de fichier à afficher,
	set_lim=True : imposer les dimensions du graphe,
	minmax=None : Limites des axes à imposer,
	format="%.4g" : format d'affichage de l'unité de temps.
	"""

	# Quelques import spécifique à la fonction :
	from matplotlib import pyplot as plt
	from pacmanprogressbar import Pacman

	# On prépare la barre de progression :
	p = Pacman(start=0, end=len(lst))

	# On prépare la fenêtre sur laquelle on va tracer :
	if ax is None:
		fig = plt.figure()
		ax  = fig.add_subplot(111)

	# On commence l'animation :
	for i, a in enumerate(lst):
		# On efface le graphique précédent :
		ax.cla()

		# On fixe les limites du graphiques si demandé :
		if set_lim:
			ax.set_ylim(-3000, 3000)
			ax.set_xlim(0, 70)

		# On charge l'espace des phases :
		map = ps.Map(a)

		# Titre du graphique :
		ax.set_title( "Gadget time unit : " + format%map.head["Time"])
		ax.set_xlabel(r"$|\vec{r}|$")
		ax.set_ylabel(r"$\vec{v}.\vec{r} / |\vec{r}|$")

		# Calcul des données :
		X, Y, Z = map._calc()

		# Tracé :
		ax.pcolormesh(X, Y, Z)
		ax.figure.canvas.draw()

		if topng:
			_save(ax.figure, a, "/tmp/", "png")

		# Mise à jour de la barre de progression :
		p.progress(i)
Exemplo n.º 4
0
#!/usr/bin/env python2.7
import urllib2
from pacmanprogressbar import Pacman

if __name__ == "__main__":

    url = "http://www.jesusroldan.com/Alberto%20Laiseca%20-%20Cuentos%20de%20Terror.tar.gz"

    file_name = url.split('/')[-1]
    u = urllib2.urlopen(url)
    f = open(file_name, 'wb')
    meta = u.info()
    file_size = int(meta.getheaders("Content-Length")[0])
    p = Pacman(end=file_size, text="Downloading")
    file_size_dl = 0
    block_sz = 8192
    while True:
        buffer = u.read(block_sz)
        if not buffer:
            break
        file_size_dl += len(buffer)
        f.write(buffer)
        p.progress(value=file_size_dl)
    f.close()
    print("Finished")
Exemplo n.º 5
0
#!/usr/bin/env python

import time
from pacmanprogressbar import Pacman

if __name__ == "__main__":

    p = Pacman(end=100, text="Progress")
    for x in range(p.len):
        p.update()
        time.sleep(.1)
        
    print("Finished")