Plug and Play Scientific Graphics with SGT

nutmegactΛογισμικό & κατασκευή λογ/κού

10 Νοε 2012 (πριν από 4 χρόνια και 7 μήνες)

205 εμφανίσεις

Plug and Play Scientific
Graphics with SGT

Donald Denbo

NOAA/PMEL
-
UW/JISAO


Presented by

Christopher Moore

NOAA/PMEL
-
UW/JISAO

http://www.epic.noaa.gov/java/sgt

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

2

Introduction


The Scientific Graphics
Toolkit (SGT) is a
collection of Java classes
to produce scientific 2D
graphics.


SGT is a flexible system,
allowing developers to
produce custom graphics.


SGT, while popular, does
require an expert
programmer to use it
effectively.

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

3

Goals for Plug n’ Play Graphics


Create easy
-
to
-
use
JavaBeans from the SGT
classes.


JavaBeans enables
beginner and intermediate
developers a quick entry
into SGT graphics.


SGT Beans handles most
events and provides tools
to easily customize the
appearance of the plot.

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

4

Why JavaBeans?


Provide component technology for Java.

Components enhance re
-
usability in the Java environment.


Can easily be used in IDE and RAD environments.


Bean Customizers can be developed to work within
IDE and RAD tools.


Beans provide a standard mechanism to interact with
development tools and simplify access to
complicated Java class libraries.


Beans have an object persistence mechanism. (XML
serialization)

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

5

Java Development Tools


BeanBuilder

Available free from Sun
Microsystems for JVM
1.4 or later


Java Integrated
Development
Environments
(JBuilder, Eclipse,
NetBeans)

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

6

BeanBuilder

Event Connection

Component Layout

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

7

SGT JavaBeans

SGT PanelModel Customizer

SGT Page Bean with graphics

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

10

Design

Page

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

11

Page

JavaBean


Visual JavaBean.
Page

can be added
to any swing container.


Page

can have any number of Panels
placed inside it. Each Panel provides
an independent graphical display of
data from the
DataModel
.


The location and size of the Panels are
specified in the
PanelModel
.

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

12

PanelModel

JavaBean


Non
-
visual JavaBean.


PanelModel
maintains:


location and size of Panels on
Page


DataGroups and their positions on a Panel


Legend position on a Panel


Titles and annotation positions on a Panel


2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

13

DataModel

JavaBean


Non
-
visual JavaBean.


DataModel

uses information from the
PanelModel

to specify the connection
between data and Panel/DataGroup.


Contains the SGTData and Attribute
objects.

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

14

Real World Example

1.
User opens ncReader and
selects a netCDF file.

2.
ncReader accesses the
PanelModel

to generate a
list of Panel/DataGroups.

3.
User selects which
Panel/DataGroup the data
subset should be
attached.

4.
ncReader adds the data
with the Panel/DataGroup
information to the
DataModel
.

ncReader

data

DataModel

PanelModel

Page

2003
-
06
-
05

NOAAResearch WebShop 2003, Longmont, CO

15

Future Directions


Design is completed and implementation will
be finished by September 2003.


Beta version of SGT Beans will be made
available once an initial implementation of the
Page
,
PanelModel
,
DataModel
, and
Customizer are complete (~1 month).


User feedback will help guide additional
development.

http://www.epic.noaa.gov/java/sgt