
A single diagram plot component to show timeseries combined with a list of variables for an easy selection of single or multiple 1 dimensonal data series. This feature rich component allows to explore data saved in arbitrary file formats like .c3d or .d3d without any specific configuration. New file formats are easy to plug into the Nimue platform.
The diagram component can be integrated in Nimue platform applications or can be used as standalone application. Features like crosshair, gray band for showing normal data, mean and std visible as contour and translucent faces and lots more is available. With the Glue component a cross hair can be synchronized with the time axis parallel to a video or a 3d stick figure.

Based on the Diagram Plot Component a Plot Sheet Component can show diagrams in rows and columns of a table. A special XML-file defines the count of diagrams, descriptions and the variables which are shown. Very complex definitions are possible to show different sets of normal data behind the curves, to show markers e.g. an upright line at the position of heel strike in the case of a gait analysis sheet or to compare different groups of patients.
If the sheet is not fixed for an application, there is a graphical userinterface for designing the sheet, without any knowlage of the underlaying XML description.

<?xml version="1.0" encoding="iso-8859-1" ?>
<?DOCTYPE Sheet PUBLIC "-//Nimue//DTD Sheet Def 1.0//EN" "sheetdef_1.0.dtd"?>
<Sheet name="FullBodyKinamtikPIGCloneAngles">
<Pages>
<!-- upper extremity angles -->
<Page name="upper extremity angles" rows="4" columns="3">
<!-- Head -->
<Diagram name="HeadTilt"
column="0"
row="0"
unit="deg"
diagramDescriptionDown="post"
diagramDescriptionUp="ant"
plane="s"
diagramType="xt"
diagramTitle="Kopf Kippung (proj)">
<Label name="RHeadAnteRetroProjAngle"
component="0"
side="right"/>
<Label name="LHeadAnteRetroProjAngle"
component="0"
side="left"/>
</Diagram>
<Diagram name="HeadObliquity"
column="1"
row="0"
unit="deg"
diagramDescriptionDown="gegenS"
diagramDescriptionUp="gleicheS"
plane="f"
diagramType="xt"
diagramTitle="Kopf Schiefstand (proj)">
...
</Page>
</Pages>
</Sheet>
<Sheet name="">Attributes of the <Diagram> element:
<Pages>
<Page rows="" columns="">
<Diagram name="" .../>
</Page>
</Pages>
</Sheet>
Attribute name Default Description Requeired namename of the element used to identifiy the element Yes commentNo columnYes rowYes xunitx-axis unit name No yunity-axis unit name No diagramDescriptionDownNo diagramDescriptionUpNo diagramDescriptionLeftNo diagramDescriptionRightNo planes = sagital, f=frontal, t=transversal
typically a shortcut for the plane s|f|t.
The letter is printed in the diagram title after the ":"No diagramTypeXT XT|XY|XYZ (XYZ is not implemented yet) No diagramTitleText line printed above the diagram followed by " :" and the side given with the attribute "plane". No
Each diagram can plot one or more timeseries. For each diagram a minimum of one <Label>-element is needed, e.g.:
<Label name="RHeadAnteRetroProjAngle"
component="0"
side="right"/>If the timeseries are not of the math type double the attribute "component" allows to define, which component should be plotted. The side of the timeserie can be defined by the corresponding attribute.
Attribute name Default Description Required nameName of the timeserie as used in the data files. Yes component xx|y|z
If the math type of the timeseries is multidimensional, e.g. 3d vector, 3xd matrx, quaternion, ... an integer number starting with 0 defines which of the components should be plotted.No xComponentnot set x|y|z
component attribute corresponding to the referenced xLabelNo yComponentnot set x|y|z
component attribute corresponding to the referenced yLabelNo zComponentnot set x|y|z
component attribute corresponding to the referenced zLabelNo sideSide not set, which is interpreted most as "both". left|right|both No labelnot set Name of the timeserie as used in data files which includes all the needed dimensions. If not set, the value of the name attribute is used instead. No xLabelnot set For multidimensional plots as alternative to the label or name attribute, if the timeseries are saved as one-dimensional trajectories. No yLabelnot set For multidimensional plots as alternative to the label or name attribute, if the timeseries are saved as one-dimensional trajectories. No zLabelnot set For multidimensional plots as alternative to the label or name attribute, if the timeseries are saved as one-dimensional trajectories. No
If the attributes xLabel, yLabel, zLabel are used, the attribute "component" is ignored. Instead the attributes xComponent, yComponent and zComponent are used.
<Sheet>Attributes of the <Group> and <DefaultGroup> elements:
<Groups>
<DefaultGroup name="" leftColor="" rightColor="" normData="">
...
</DefaultGroup>
<Group name="" leftColor="" rightColor="" normData="">
<identification>
<PropertyGroup name="">
<Property key="" value=""/>
...
</PropertyGroup>
</identification>
</Group>
</Groups>
</Sheet>
name Description Required name leftColor rightColor normData
Without a specific configuration for each <Label>-element child of a <Diagram>-element in the normal data file is searched for a data set with the name name. E.g. for gait data only one gray band for left and right side should be shown. For this a specific normal data configuration is needed. Have a look at the following example:
<Diagram name="ABC">It is assumed that the normal data file includes a timeserie with the name NORMPelvisAngles with mean and standard deviation. In the unusal cases where mean and standard deviation has different label names the following syntax with additional attributes is possible. But this is not recommended.
...
<Norm name="NORMPelvisAngles"
component="0"/>
</Diagram>
<Norm name="NORMPelvisAngles"
component="0"
mean="NORMPelvicTilt"
std="NORMStdPelvicTilt"/>
Attribute name Description Required nameName of the timeserie. If there are no optional attributes "mean" and "std" this is also the name of the timeserie searched in the normal data file, including mean and standard deviation. Yes componentIf the math type of the timeseries is multidimensional, e.g. 3d vector, 3xd matrx, quaternion, ... an integer number starting with 0 defines which of the components should be plotted. No meanFor the unusal case that there are saved seperate timeseries for mean and standard deviation. This defines the name of the timeserie for the mean.
(not recommended)No stdFor the unusal case that there are saved seperate timeseries for mean and standard deviation. This defines the name of the timeserie for the standard deviation.
(not recommended)No