Asymptote: The Vector Graphics LanguageAsymptote is a powerful descriptive vector graphics language that provides a natural coordinate-based framework for technical drawing. Labels and equations are typeset with LaTeX, for high-quality PostScript output.
A major advantage of Asymptote over other graphics packages is that it is a programming language, as opposed to just a graphics program.
Features of Asymptote:
provides a portable standard for typesetting mathematical figures, just as TeX/LaTeX has become the standard for typesetting equations;
generates high-quality PostScript, PDF, SVG, or 3D PRC vector graphics;
embeds 3D vector PRC graphics within PDF files;
inspired by MetaPost, with a much cleaner, powerful C++-like programming syntax and IEEE floating-point numerics;
runs on all major platforms (UNIX, MacOS, Microsoft Windows);
mathematically oriented (e.g. rotation of vectors by complex multiplication);
LaTeX typesetting of labels (for document consistency);
uses simplex method and deferred drawing to solve overall size constraint issues between fixed-sized objects (labels and arrowheads) and objects that should scale with figure size;
fully generalizes MetaPost path construction algorithms to three dimensions;
compiles commands into virtual machine code for speed without sacrificing portability;
high-level graphics commands are implemented in the Asymptote language itself, allowing them to be easily tailored to specific applications.