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 highquality 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 floatingpoint 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 fixedsized 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;
highlevel graphics commands are implemented in the asymptote language itself, allowing them to be easily tailored to specific applications.