2013-04-30 17 views
5

Sto cercando di imparare la programmazione web in python e ho in mente il seguente progetto: estrarre lo yahoo finance api per i dati dello strumento e visualizzarlo in tempo reale, così come i grafici di trama basato su dati dello strumento.framework python per un sito web in tempo reale

Ho già fatto qualcosa di simile usando wxpython, e sono interessato a come realizzarlo in un'applicazione web.

Il mio primo pensiero è stato quello di usare django e matplotlib sul server, e chiedere al cliente di aggiornare le immagini del grafico attraverso jquery ad un certo intervallo di tempo, ma dopo un po 'di ricerche mi sono imbattuto in librerie come twistato e tornado ... e ora sono confuso. Funzionerebbero meglio per questa app Web rispetto a Django?

Dopo aver vagato sopra, la mia domanda è: quale libreria dovrei usare per scrivere l'app web che ho in mente? Sto anche pensando che dovrei abbandonare matplotlib e generare il grafico sul lato client, ma non sono sicuro di quale libreria javascript mi ​​permetterebbe di farlo, se esiste.

risposta

5

alcuni consigli:

1/Non tracciare i dati al back-end. Utilizzare invece i browser per generare grafici. Suggerirei utilizzando jqplot o highcharts.

2/Sì, è possibile utilizzare tornado o twistato anziché django, poiché sono server asincroni e fornire una gestione più rapida delle richieste.

3/È necessario creare un'interfaccia REST dell'applicazione, con il lato server che invia solo dati JSON e eseguire tutte le procedure dell'interfaccia utente e la creazione di grafici sul lato client.

4/Backbone.js (consigliato, ma è possibile utilizzare qualche altro framework MVC), si dimostrerebbe anche utile se la tua app diventa troppo complessa.

+3

Non è necessario utilizzare Twisted * o * Django. Puoi usarli entrambi. Django è un'applicazione WSGI. Twisted include un server WSGI. –