Wow, yet another complete library for creating plots and text. I'm currently addicted to matplotlib for plotting and was involved with ReportLab for drawing PDFs. This Python library has it has it both. Here's the feature list from the site: PyX is a Python package for the creation of PostScript and PDF files. It combines an abstraction of the PostScript drawing model with a TeX/LaTeX interface. Complex tasks like 2d and 3d plots in publication-ready quality are built out of these primitives. seamless TeX/LaTeX integration full access to PostScript features like paths, linestyles, fill patterns, transformations, clipping, bitmap inclusion, etc. advanced geometric operations on paths like intersections, transformations, splitting, etc. sophisticated graph generation: modular design, pluggable axes, axes partitioning based on rational number arithmetics, flexible graph styles, etc.