The pdf backend rely on the "tell" method of a given file object,
which (I think) is not supported by stdout.
As a workaround, you may use StringIO.


from cStringIO import StringIO
outs = StringIO()
plt.savefig(outs, format='pdf')
print os.getvalue()

Regards,

-JJ

On Fri, Oct 1, 2010 at 8:59 PM, damiano michael
<damiano-mich...@wanadoo.fr> wrote:
>  hi !
>
> i would like to write a server side python script that generate .pdf
> documents.
>
> for the moment i have Python 2.7 installed server side
> and matplolib installed server side too.
>
> A simple script that create a simple plot and generate a .png picture
> works.
>
> this is the script i use :
>
> #-------------------------------------------
>
> # to access standard output :
>
> import sys
>
>
>
> # select a non-GUI backend :
>
> import matplotlib
>
> matplotlib.use('Agg')
> #matplotlib.use("cairo.pdf")
>
> #matplotlib.use('PDF')
>
>
>
>
> # import plotting module :
>
> import matplotlib.pyplot as plt
>
>
>
> # generate the plot :
>
> plt.plot([1,2,3,2,3,4])
>
>
> # print the content type (what's the data type)
>
> # the new line is embedded, using '\n' notation :
> print "Content-Type: image/png\n"
> # print "Content-Type: image/PDF\n"
> # print "Content-type: application/pdf"
>
>
>
> # output directly to webserver, as a png file
>  :
> plt.savefig(sys.stdout, format='png')
>
>
> # plt.savefig(sys.stdout, format='PDF')
>
>
>
> # plt.savefig( "test.pdf", format='pdf'  )
>
> #-----------------------------------------------
>
> I am wondering how to do the same thing but with sending a pdf file
> instead of
> a png picture. (the # are for all the things i tried)
>
> Does someone know ?
>
> thanks.
>
> jean-claude
>
>
>
> ------------------------------------------------------------------------------
> Virtualization is moving to the mainstream and overtaking non-virtualized
> environment for deploying applications. Does it make network security
> easier or more difficult to achieve? Read this whitepaper to separate the
> two and get a better understanding.
> http://p.sf.net/sfu/hp-phase2-d2d
> _______________________________________________
> Matplotlib-users mailing list
> Matplotlib-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>

------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to