DMI NinJo development and deployment status Benny Koza, DMI EGOWS 2006, Budapest, Hungary
Overview DMI NinJo development DMI NinJo deployment status EGOWS 2006: DMI NinJo status, Slide 2
Overview DMI NinJo development DMI NinJo deployment status EGOWS 2006: DMI NinJo status, Slide 3
DMI NinJo development DMI responsibilities:» Diagram Framework» Other frameworks as off-spring from the diagram framework: Layout Properties Legends» Diagram implementations (meteograms) EGOWS 2006: DMI NinJo status, Slide 4
Diagram Framework The activity started in the summer of 2002 Main goal:» Create a framework which forms the basis of all types of diagrams in NinJo» In other words: Provide the functional components that are common to all diagram types and make them easily extensible The types of diagrams to be supported by NinJo are the union of all types of existing diagrams The requirements specification has examples of 40 different existing diagrams, mostly meteograms in different incarnations EGOWS 2006: DMI NinJo status, Slide 5
Diagram terminology Diagram agent Chart agents Data series agents Diagram container agent EGOWS 2006: DMI NinJo status, Slide 6
Diagram Framework, current status Integration in the PAC framework completed» The diagram components, i.e. diagram container, diagram, chart and data series are PAC agents» Base implementations of these agents are available Components having general functionality have now become frameworks (see later slides) Fully configurable from either XML-files or via the GUI (Property GUIs) I18n support via property files EGOWS 2006: DMI NinJo status, Slide 7
Diagram Framework, current status A special diagram agent implementation exists which makes diagrams pluggable as panels in windows that are not diagram containers Implementations of various types of axes available:»linear» Logarithmic» Potential» Time with time slider EGOWS 2006: DMI NinJo status, Slide 8
Diagram Framework, current status Implementations of various general data series views available:»curve» Scatter plot» Histogram» Stacked bar» Symbol plot (using PlotElementGroups from the point data visualization) EGOWS 2006: DMI NinJo status, Slide 9
Diagram Framework, outlook Editing of data via the diagram Missing data series view implementations:»gantt» EPS distribution bars as used in ECMWF EPS meteograms» Specialized DWD cloud cover probability» Pictograms EGOWS 2006: DMI NinJo status, Slide 10
Other frameworks Developed as part of the diagram framework and later generalized as a general framework:»layout» Property» Legend EGOWS 2006: DMI NinJo status, Slide 11
Layout Framework Charts of a diagram is required to be laid out in various ways thereby resulting in a need for a general layout mechanism The use of GOF graphics and the needed support for various output formats requires specialized layout for GOF graphics. Java Swing layouts do not fulfil this Layout has been generalized such that it controls the layout of the view of a PAC agent and its child agents inside the view Scenes of the main window and the charts of the diagram can now be laid out using a layout strategy Legends of a scene is laid out using a special layout strategy that allows automatic and user placement EGOWS 2006: DMI NinJo status, Slide 12
Property Framework Properties serve the following purposes:» They define the properties of a PAC agent that the user may change during run-time. For diagrams these are e.g. visualization attributes (like colours, line styles, fonts etc.), the station or the period data is displayed for» Provides the glue between the configuration and the GUI used to change the configuration: Provides the Swing panel with the GUI components required to change the configuration Automates updating of the configuration and undo/redo Reusing a property in another context for the same configuration type also makes the GUI reusable EGOWS 2006: DMI NinJo status, Slide 13
PropertyDialog example Property pane tabs Property Pane Property name Property GUI EGOWS 2006: DMI NinJo status, Slide 14
Property Framework The Property Framework is now an integral part of the NinJo client framework Any configurable object can have properties Support for properties, i.e. property changes and GUI and display updates, are built-in for PAC agents EGOWS 2006: DMI NinJo status, Slide 15
Legend Framework The use of legends in diagrams require both graphical and textual legends Graphical legends is needed for data series legends Textual legends are needed for titles/headers The contents of a legend can be laid out using a layout specification similar to JGoodies FormLayout (freeware Swing layout manager) The context specific information is retrieved using a LegendRequestHandler EGOWS 2006: DMI NinJo status, Slide 16
Legend Framework The contents of a text legend can be specified as text with tags to be replaced by context specific information The tags are replaced by calling an implementation dependent LegendRequestHandler which returns the context specific strings The contents of a graphical legend is returned by the LegendRequestHandler as a GOF scenegraph In the future the framework will be extended to support HTML-like legend contents EGOWS 2006: DMI NinJo status, Slide 17
Legend Framework The legend framework has been integrated into the PAC as a LegendView of a PAC agent Thus it is usable for all PAC agents, i.e. also the layers A special layout arranges all legends according to their preferred size and alignment such that they do not overlap Legends can be resized and repositioned interactively EGOWS 2006: DMI NinJo status, Slide 18
Legend and layout example EGOWS 2006: DMI NinJo status, Slide 19
Legend and layout example Minimized legends and diagram EGOWS 2006: DMI NinJo status, Slide 20
Diagram implementations Diagram implementations currently exist for:» Meteograms Many different types» Sounding diagrams (GeoInfo, Traben-TrarBach)» Cross sections (MCH, Zürich) General meteogram agent implementations exist which can be used for configuration of specialized meteograms A library of many data series configurations for meteorological parameters exists EGOWS 2006: DMI NinJo status, Slide 21
Meteogram, SYNOP and point forecast EGOWS 2006: DMI NinJo status, Slide 22
Meteogram, cloud observations EGOWS 2006: DMI NinJo status, Slide 23
Meteogram, DWD model EGOWS 2006: DMI NinJo status, Slide 24
Meteogram, DWD multimodel EGOWS 2006: DMI NinJo status, Slide 25
Meteogram, DWD TAF guidance EGOWS 2006: DMI NinJo status, Slide 26
Meteogram, DWD area forecast EGOWS 2006: DMI NinJo status, Slide 27
Sounding Diagram, single two soundings EGOWS 2006: DMI NinJo status, Slide 28
Sounding Diagram, multi EGOWS 2006: DMI NinJo status, Slide 29
Sounding Diagram, single with profile EGOWS 2006: DMI NinJo status, Slide 30
Cross section EGOWS 2006: DMI NinJo status, Slide 31
Cross section EGOWS 2006: DMI NinJo status, Slide 32
Overview DMI NinJo development DMI NinJo deployment status EGOWS 2006: DMI NinJo status, Slide 33
DMI Ninjo deployment Platform chosen:» Client side: Windows» Server side: Linux Originally, the intention was to use Linux for the Client Client performance is, however, better on Windows» This has been tested by DWD and DMI» Daily use during development also clearly shows this» Performance is approx. 30-40% better EGOWS 2006: DMI NinJo status, Slide 34
DMI Ninjo deployment A superuser group consisting of four meteorologists has the following tasks:» Evaluation» Testing of the meteorological correctness» Education of meteorologists» Creation of favourite configurations All meteorologists have had one week of education EGOWS 2006: DMI NinJo status, Slide 35
DMI Ninjo deployment, current status Three seats with 1.0 is in operational use in the central meteorological office Renovation of the central meteorological office have postponed the deployment of 1.1 for half a year The goal is to have 1.2 fully deployed in the autumn EGOWS 2006: DMI NinJo status, Slide 36