An Interactive XY Graph Plugin for SWT and

- Slides: 1
An Interactive XY Graph Plugin for SWT and GEF Applications Xihui Chen, Kay Kasemir Spallation Neutron Source, Oak Ridge National Laboratory Why there Screenshots • Based on Draw 2 D and SWT For thousands of scientific and engineering projects, they all have some kind of functions to visualize data in XY graphs. To reduce the repeat work to recreate an XY graph over and over again, a standard XY graph plugin was developed based on Draw 2 D and SWT, which makes it possible to embed it in any GEF or SWT applications. So far, it has been successfully integrated in CSS BOY[1] project and CSS Data Browser[2] project. The graph is simply a Draw 2 D Figure, so it can easily embedded in any GEF or SWT applications. • Light weight but powerful Even with powerful functions, the full size of deliverable is around 500 KB including source code and help files. It doesn’t have any dependencies other than SWT and Draw 2 D. • High Performance It has the ability to draw large amount of data (for example 10, 000 samples) in few milliseconds. You can also implement customized data provider with you own data compression algorithm. When zoom in/out the plot area, the outside part of plot area will not be drawn, which results in smoothly zooming. Abstract What it can do It not only has the full ability to draw most type of charts, most important, it also brings with powerful interactive operations. • Support line chart, scatter chart, bar chart, step chart, area chart and more… • Automatically zoom, Rubberband Zoom, Horizontal Zoom, Vertical Zoom • Panning on both graph area and axes • Autoscale • Annotation support • Multiple axes support • Log scale, date time format support • Grouping legends by axes • Online Configuration for everything • Customized data provider support • Taking snapshot • Undo/Redo • And more. . . SNS is managed by UT-Battelle, LLC, under contract DEAC 05 -00 OR 22725 for the U. S. Department of Energy Highlighted Features Concepts SWT XYGraph is designed with the concept of components, so the pieces which make up an XY graph can be easily added or deleted. For example, you have the choice to have the toolbar or not; you can have arbitrary number of axis, traces or annotations. What’s more, the components can be easily reused for other applications. For example, the Linear Scale has been reused for some CSS BOY[1] widgets such as intensity graph, thermometer, tank, gauge and meter. The interfaces of IData. Provider and ISample give users the possibilities to implement a different data provider with different data source or data storage structure for their applications. • Easy to use The APIs are quite straightforward to use. You can also easily hook listeners to any part or the whole XYGraph. Where to get it SWT XYGraph is free open source software distributed under Eclipse Public License v 1. 0. You can get it from the project website: http: //code. google. com/p/swt-xy-graph/ References [1] http: //ics-web. sns. ornl. gov/css/boy. html [2]https: //sourceforge. net/apps/trac/csstudio/wiki/Data. Browser Contact me: chenxihui 1981@gmail. com