Dear Joshua, I think I can try a preliminary comparison from my point of view.
Let me start with the state-of-the-art in PGF, which is probably known to you: The actual PGF stable 2.00 has "data visualization" - namely the \draw plot ...; paths which get data points and do some sort of visualization, depending on a 'plot handler'. Clearly, this approach is rather limited in many aspects. For example, there is no real way to map input data to the canvas short of identifying input coordinates with canvas points (which means that you can't visualize something beyond +-16000). Its accuracy is low, it has no way to draw axes automatically, it supports only up to three coordinates... and so on. The pgfplots package separates the input data and the visualization by introducing a further survey phase in which limits are computed and transformations prepared. It then does a visualization phase in which the data is transformed and drawn onto the canvas, furthermore, an appropriate axis is drawn around it. The idea is: the user provides the data and pgfplots does the rest automatically, including axis descriptions or further options provided by the user. However, until the next of pgfplots, the basic level interface of pgfplots is still that of the PGF 'plot handlers' (with some extensions like color data and additional error bar support). If someone wants to add a new plot handler, he can add a PGF plot handler and that one is automatically usable in pgfplots. This is sufficient for most visualizations, but try quiver plots - they need (x,y,z) and (u,v,w) and perhaps color (for every point). Quiver plots are implemented in the pgfplots unstable, but the basic level interface is no longer that of PGF 2.00 -- instead, it will become that of the PGF DV engine. The PGF DV engine is an attempt to re-implement the whole process of data visualization on a basic level: it provides the aforementioned survey phase and the visualization phase directly and it provides extensible ways to input coordinates. You can already glimpse at these things when you browse through Till's preliminary documentation. Besides the basic level interface, it will also contain a high level interface to actually pack these things together. Currently, the PGF DV engine has a systematic programmer's API together with its documentation, and documentation for high-level user interfaces will come when Till is ready. Conceptionally, pgfplots aims at being a high-level tool. It provides user interfaces for data visualization, and it aims at describing how to use them and how to modify their parameters. In its current state, the DV engine is an application programmer interface. Tools like pgfplots can be implemented on top of it, using it without the user noticing that he does so. But if someone writes his own way to provide coordinates in terms of the DV engine, this tool can be used by all applications which use the DV engine as core. Similar aspects hold for new plot handlers: pgfplots is high-level, it provides various different pre-defined plot handlers and documents how to use them and how to modify parameters. If someone writes a new plot handler for the DV engine, and pgfplots supports the interfaces of the DV engine, you can directly use the new one as well. The DV engine also supports (or will support when it is complete, compare the existing examples in the pgf manual) a high-level interface, including axes and axis styles. This repeats functionality of pgfplots (with a different user interface). Of course, these features will use the interfaces of the DV engine and its equivalent to "plot handlers", but it will use its own set of parameters, its own way to set them and its own way of actually drawing descriptions and axis lines. Thus, pgfplots and the pgf DV styles may both be on the same basic level interface, but they handle things differently and probably in an incompatible way. The user will have to decide which one he prefers. Currently, the basic level interfaces of pgfplots are being refactored in preparation to the DV engine (and include already advanced visualization techniques like contour plots, quiver plots, histograms, or patch plots, compare the sourceforge website containing an unstable TDS build). When the DV engine comes, there are plans for an adapter between the pgfplots and pgf DV interfaces. While (probably most of the) plot handlers and input types will be compatible in some way, the sets of supported features and the respective high-level user interfaces to display axes will be different as far as I can see from Till's high-level styles. This is how I see the DV engine as it exists so far in relation to pgfplots. Best regards Christian 2010/10/13 Joshua Smith <jhs0...@gmail.com <mailto:jhs0...@gmail.com>> On the pgf-users email list, it was announced that a new version of pgf would be released later this year, but without the DV library. Another curious user asked what the DV library is, and Stefan pointed to part V of the manual of the CVS version of PGF, which describes a data visualization library. A lot of what is described seems to repeat functionality present in pgfplots. Can anyone provide a brief, but more thorough comparison between pgfplots and what is being coded directly into pgf as the data visualization library? Thanks, Josh ------------------------------------------------------------------------------ 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 _______________________________________________ Pgfplots-features mailing list Pgfplots-features@lists.sourceforge.net <mailto:Pgfplots-features@lists.sourceforge.net> https://lists.sourceforge.net/lists/listinfo/pgfplots-features ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ Pgfplots-features mailing list Pgfplots-features@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pgfplots-features