Gráficas interactivas en el navegador

Últimamente sigo con mucha atención varios desarrollos relacionados con la posibilidad de usar ‘python’ en el navegador, siempre persiguiendo quimeras 😛 Entre ellos se encuentra brython, cuyo nombre proviene de ‘browser python‘.
He estado estudiando un poco de brython y un poco sobre el uso del elemento ‘canvas’ en HTML5, el cual permite dibujar en el navegador y, a pesar de lo cutre del código rápido y sucio que he hecho y a pesar de no tener mucha idea de HTML5, del DOM, de brython, de javascript, he obtenido un resultado que me ha parecido ilusionante. Mi propósito era poder hacer un gráfico como lo que se obtiene con pyplot.plot de matplotlib pero en el navegador y con un poco de interactividad.
El resultado lo podéis visualizar en este enlace. El código lo podéis ver viendo el código html de la página.
¿Alguien vería interesante desarrollar una biblioteca sobre brython para ‘pintar’ en el navegador?, ¿alguien ve factible la idea detrás de brython?, ¿los navegadores podrían traer brython o sucedáneos ya integrados?, ¿sigo persiguiendo quimeras?
P.D.: En cuanto tenga tiempo edito esta entrada explicando el código (igual lo refactorizo antes si encuentro el tiempo necesario), simplemente lo quería compartir ya porque igual no puedo tocarlo en semanas y se diluye en mi cabeza.

11 pensamientos sobre “Gráficas interactivas en el navegador”

  1. Brython tiene muy buena pinta, pero lo estan enfocando muy mal y el diseño da pena (¿¿¿meter mas de 100 funciones en el namespace global para construir elementos HTML??? ¡¡¡Haz un paquete!!!) y quizas ese factor de diseño sea lo que se cargue el proyecto. Por otro lado, la idea es genial, y portar alguna libreria como PyGame (SDL) o similar podria estar pero que muy bien…

    1. Estoy de acuerdo contigo en que lo están gestionando un poco mal, yo creo que lo que necesita son más colaboraciones. En cuanto al resultado, me quito el sombrero Kiko (y gracias por cubrirme las espaldas mientras estoy de exámenes).

      1. El resultado es lamentable, al igual que el código, pero gracias a brython y a echarle unos pocos ratos muertos he podido ver lo que se podría hacer con algo similar a brython.

    2. Tú que eres una persona con conocimientos y sabiendo que existen unos cuantos proyectos parecidos (pyjs, pyvascript, pyjaco,…), ¿qué les está faltando para que alguno cuaje? Ahora mismo, tal cual está brython, le veo muchas posibilidades para hacer cosas curiosas… Nunca llegué a probar otros.
      Por cierto, acaban de refactorizar brython. No sé si eso resuelve alguna de tus dudas sobre el diseño, hablo sin saber. como siempre 😀
      ¿Podría surgir de aquí un proyecto para una marathon de python-madrid?

  2. Pingback: Gráficas interactivas en el navegador | Python-es | Scoop.it

    1. Skulpt no es exactamente lo mismo, es una implementación de python para poder ser usada en un navegador. Si ahora quieren incluir lo que está haciendo brython, acceso al DOM, habrá que seguirlo porque ‘parece’ más maduro,… Chema, hace un tiempo, preguntó en la lista python-es y quizá pueda aportar algo de luz, le preguntaré a ver si me cuenta algo.

  3. (lo siento, no hablo español)
    I am really impressed by your demo. Would you allow me to put it in the Brython site gallery ?
    During the last weeks the Python-to-Javascript translator was completely rewritten ; new features are now being added to cover more of the Python 3 syntax (the issue reported by Glyph Lefkowitz is now fixed, for instance). Don’t forget that Brython is still a very young project (it was first announced last November) so it’s not surprising it’s not as mature as projects started years ago, but it already allows building advanced applications such as this one or others shown on the Brython site gallery, and the community is very active
    Until recently it was not possible to import names with “from module import X,Y” or “from module import *”. Now that this feature is implemented, there is a possibility of putting all the HTML names in a module instead of in the execution namespace. I started a discussion on this point on the Brython forum
    – Pierre

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

eighty one − seventy seven =