[python][pygame] Programa que realiza la grafica de funciones.

Iniciado por braulio--, 21 Febrero 2010, 14:04 PM

0 Miembros y 1 Visitante están viendo este tema.

braulio--

Pues pongo este programa para los que les interese esto de pygame. Cualquier duda pregunten.
Para probarlo necesitan tener pygame instalado.
Os pongo una captura de pantalla de como va :

Código (python) [Seleccionar]

#!/usr/bin/python
import pygame,random
xp,yp = 400,400
pantalla = pygame.display.set_mode((xp,yp))
pantalla.fill((255,255,255))
for x in range(0,xp,20):
 pygame.draw.line(pantalla, (0,0,0) , (x, 1), (x, 800))
for y in range(0,yp,20):
 pygame.draw.line(pantalla, (0,0,0) , (1, y), (800, y))
pygame.draw.line(pantalla,(0,0,0), (yp/2,0),(yp/2,xp),4)
pygame.draw.line(pantalla,(0,0,0), (0,xp/2),(yp,xp/2),4)
pygame.draw.circle(pantalla, (0,0,0), (xp/2,yp/2),5)
pygame.display.flip()
#### La pantalla esta cargada totalmente a partir de aqui
while 1:
colora,colorb,colorc = random.randint(0,250),random.randint(0,250),random.randint(0,250)
funcion = raw_input("f(x)= ")
listacoordenadas = []
for x in range(-6,7):
 listacoordenadas.append((x*20+xp/2,yp/2-eval(funcion)*20))
for indice in range(len(listacoordenadas)-1):
 pygame.draw.line(pantalla,(colora,colorb,colorc), listacoordenadas[indice],listacoordenadas[indice+1],4)
pygame.display.flip()
raw_input()

 

XD YO

WOW...yo sabia que pygame era poderoso para la programación de juegos, pero jamas pensé en aplicarlo a graficar;  ;-)

Yo estoy trabajando en estos momentos con matplotlib para graficar (y en ese aspecto, es muy bueno) y por otras razones, pero solo tengo una pregunta sobre tu codigo:

¿Lo has probado con ((x**2)-10)?

"Fácilmente aceptamos la realidad, acaso porque intuimos que nada es real"
-Borges -El inmortal

braulio--

Mira, aquí lo tienes con x**2-10 :


[off]
Me encanta Borges
[/off]

Novlucker

Yo para gráficar estoy usando excel :xD (no, no desde python XD)
Lo bueno de Python es lo que se puede llegar a hacer con poquitas líneas :D
Matplotlib lo conozco desde hace algún tiempo, y la verdad que la variedad de posibilidades que permite es increíble!, aunque aún nunca se ha dado la ocasión de crear nada usandolo.

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

ChicoMaravilla

Que super cool,   ¡¡¡si lo hubiera encontrado en los meses de clases !!! :-*

lokitosamax

#5
 ::) Brother un favor si me pudieras dar un manual de pygame pero en Castellano (Es que estoy haciendo una tesis con python) y nesecito saber el manejo de librerias graficas si fueras tan amable pls :)

zZznewbiezZz

muy bueno!!!
pero una consulta, cuando aparece la ventana de pygame, veo la cuadrícula normal, pero cuando abro el python idle para ingresar alguna función no pasa nada y se cuelga, y tengo q poner ctr+alt+supr.  alguna solucion???
gracias de antemano