VTK/Charts: Difference between revisions
From KitwarePublic
< VTK
Jump to navigationJump to search
(First few existing libraries/applications for producing charts) |
(Updated links.) |
||
(25 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
== | == Goals == | ||
=== | * Render 2D charts using OpenGL/VTK | ||
* Scalable to large data sets | |||
* Simple, flexible API | |||
* Enable server side rendering of charts with VTK compositing | |||
* Proper handling of IEEE Not-A-Number (NaN) values in plots of both experimental and simulation data. | |||
== Open Questions == | |||
* Alternate backend to produce publication quality output? | |||
* Possibility to extend the API to 3D charts in the future? | |||
* Maybe real-time charting? (just-in-time visualization of data sets) | |||
== Further Details on API == | |||
Please see [[VTK/2DAPI]] and [[VTK/Charts/ChartAPI]] for details about the 2D API and chart API, along with proposed class relationships. [[VTK/Marks]] discusses options for a [http://www.protovis.org protovis]-like API in VTK, that would build on the 2D API. The [[VTK/CanvasAPI]] details the canvas API that both the chart and marks API build on. | |||
== Chart Types == | |||
* XY plot | |||
* Scatter | |||
* Bar chart | |||
* Histogram | |||
* Stack chart | |||
* Pie chart | |||
* Parallel axes | |||
* Tree map | |||
* Bubble chart | |||
== Existing Applications/Libraries == | |||
Below is a summary of different libraries or applications that produce 2D charts and plots. Those listed either provide both screen and publication quality rendering, or just screen rendering. | |||
=== Optimized for Screen Rendering === | === Optimized for Screen Rendering === | ||
* [http://www.prefuse.org/ prefuse] | |||
* [http://www.tableausoftware.com/ tableau] | |||
* [http://manyeyes.alphaworks.ibm.com/manyeyes/ Many Eyes] | |||
* [http://code.google.com/apis/chart/ Google Chart] | |||
* [http://qwt.sourceforge.net/ Qwt] | |||
* [http://qwtplot3d.sourceforge.net/ QwtPlot3D] | |||
* [http://anaphe.web.cern.ch/anaphe/qplotter.html QPlotter] | |||
* [http://www.ggobi.org/ ggobi] | |||
* [http://www.zedgraph.org/ ZedGraph] | |||
* [http://www.steema.com/ TeeChart] | |||
* [http://www.iocomp.com/ Iocomp] | |||
* [http://www.codeproject.com/KB/miscctrl/xgraph.aspx/ Scientific charting control] | |||
* [http://www.advsofteng.com/ ChartDirector] | |||
* [http://www.dundas.com/ Dundas] | |||
* [http://www.visifire.com/ Visifire] | |||
* [http://code.google.com/p/core-plot/ core-plot] | |||
* [http://vis.stanford.edu/protovis/ Protoviz] | |||
=== Multiple Backends (Publication Quality) === | |||
* [http://plplot.sourceforge.net/ PLPlot] | |||
* [http://www.gnuplot.info/ gnuplot] | |||
* [http://matplotlib.sourceforge.net/ matplotlib] | |||
* [http://home.gna.org/veusz/ Veusz] | |||
* [http://plasma-gate.weizmann.ac.il/Grace/ Grace] | |||
* [http://glx.sourceforge.net/ GLE] |
Latest revision as of 16:32, 11 December 2009
Goals
- Render 2D charts using OpenGL/VTK
- Scalable to large data sets
- Simple, flexible API
- Enable server side rendering of charts with VTK compositing
- Proper handling of IEEE Not-A-Number (NaN) values in plots of both experimental and simulation data.
Open Questions
- Alternate backend to produce publication quality output?
- Possibility to extend the API to 3D charts in the future?
- Maybe real-time charting? (just-in-time visualization of data sets)
Further Details on API
Please see VTK/2DAPI and VTK/Charts/ChartAPI for details about the 2D API and chart API, along with proposed class relationships. VTK/Marks discusses options for a protovis-like API in VTK, that would build on the 2D API. The VTK/CanvasAPI details the canvas API that both the chart and marks API build on.
Chart Types
- XY plot
- Scatter
- Bar chart
- Histogram
- Stack chart
- Pie chart
- Parallel axes
- Tree map
- Bubble chart
Existing Applications/Libraries
Below is a summary of different libraries or applications that produce 2D charts and plots. Those listed either provide both screen and publication quality rendering, or just screen rendering.
Optimized for Screen Rendering
- prefuse
- tableau
- Many Eyes
- Google Chart
- Qwt
- QwtPlot3D
- QPlotter
- ggobi
- ZedGraph
- TeeChart
- Iocomp
- Scientific charting control
- ChartDirector
- Dundas
- Visifire
- core-plot
- Protoviz