[PIPython] PyChart - scrivere su StringIO

G.M.Dall'Olio dalloliogm
Lun 24 Ott 2005 11:20:53 CEST


Qualcuno di voi usa PyChart?
Io sto imparando da poco e sto cercando di utilizzare StringIO per
scrivere un grafico su una stringa, anzichè su un file. Il problema è 
che questo script semplicemente non funziona:

def plot2():

       theme.reinitialize()
       canv_obj = StringIO.StringIO()

       canv = canvas.init(fname=canv_obj, format="png")

       data = [["Jan", 10], ["Feb", 22], ["Mar", 30]]

       ar = area.T(x_coord = category_coord.T(data, 0),
       y_range = (0, None),
       x_axis = axis.X(),
       y_axis = axis.Y())
       ar.add_plot(bar_plot.T(data = data, label = "Something"))

       graph = ar.draw()
       graph_code = canv_obj.len#.getvalue()
       return graph_code

Ho seguito e riletto il tutorial per più volte, ma per qualche strano
motivo graph_code mi ritorna sempre vuoto, sia che utilizzi
canv_obj.get_value, o .read, o altro (anche .len, che utilizzo per
test, mi ritorna 0).
Ho provato a mettere anche ar.draw(canv) ma non funziona.
Se al posto di StringIO metto un oggetto file vero, lo script mi
ritorna qualcosa, ma solo se utilizzo ar.draw() e non ar.draw(canv).
Infine ho provato StringIO anche su altri esempi di grafici, presi dal
tutorial.
Dov'è l'errore? In realtà è un mese che cerco di risolvere.
grazie...



More information about the Python mailing list