A „Plot Sheet“ component shows diagrams organized in rows and columns of a table, in one or more pages. The count of diagrams, descriptions and the variables to show are configured in a specific xml-file, stored in the „SheetDefs“ subfolder of the project. Very complex definitions are possible e.g. to show different sets of reference data behind the curves, to show markers e.g. an upright line at the position of foot strike in the case of a gait analysis sheet or to compare different groups of patients.
The sheet definition can be fix for an application, or there can be available a graphical userinterface for configurate the sheet, without any knowlage of the underlaying XML description.
Example sheet with legend on the left side and title on top of the sheet, diagrams show time-normalized and xy-plots and crosses for static measurements. It demonstrates that it is possible not to show at each sheet table position a diagram („holes“ are allowed.).
If mean/std of selected cycles are shown, e.g. stride in the case of a gaitanalysis, this can be exported as a .d3d-file into the projects output folder. The saved data can be used as input for calculation of an inter-subject mean and std data reference to be shown as gray bars behind the curves.
In the Plot Sheets tab context menu, execute “Save Mean/Std” action. This opens the following dialog:
A file with the file suffix “.d3d” is saved in the selected folder. Per default its the “output” subfolder of the opened main project. The filename includes the patient id (parent folder name) and delimited with “_” the name of the motion (sub folder name).
The structure of this file is
<subject>/<session>/<group>/<phase>/<original trial name>_<phase number> <subject>/<session>/<group>/<phase>/<original trial name>_<phase number> <subject>/<session>/<group>/<phase>/meanStd ... <group>/meanStd
That means that timeseries of time normalised phases and its mean+std are saved. The files can be used to create a reference data set as it is shown as grey bands behind patient data.
Extracting of scalar-parameters from the timeseries based on a xml-configuration and saving them into a spreadsheet file e.g. for Microsoft excel or Libre/Open-Office is possible.
In the Plotsheets tab context menu, execute „Datamining“.
The main structure of the xml-configuration file looks as follow:
<Sheet name=""> <Pages> <Page rows="" columns=""> <Diagram name="" .../> </Page> </Pages> </Sheet>
The table shows the Attributes of the <Diagram> element:
|name||name of the element used to identifiy the element||Yes|
|xunit||x-axis unit name||No|
|yunit||y-axis unit name||No|
|plane||s = sagital, f=frontal, t=transversal, typically a shortcut for the plane.||No||The letter is printed in the diagram title after the character „:“.|
|diagramTitle||Text line printed above the diagram followed by „ :“ and the side given with the attribute „plane“.||No|
|upperYLimit, upperXLimit||autoadjust||If both attributes are set to double values than the upper and lower limit of the diagram is set||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.
|name||Name of the timeserie as used in the data files.||Yes|
|component||x,y,z if the math type of the timeseries is multidimensional, e.g. 3d vector, 3×3 matrix 3d, quaternion, … an integer number starting with 0 defines, which of the components should be plotted.||No|
|xComponent||not set||x,y,z component attribute corresponding to the referenced xLabel||No|
|yComponent||not set||x,y,z component attribute corresponding to the referenced yLabel||No|
|zComponent||not set||x,y,z component attribute corresponding to the referenced zLabel||No|
|side||not set, which is interpreted most as „both“.||left, right, both||No|
|label||not 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|
|xLabel||not set||For multidimensional plots as alternative to the label or name attribute, if the timeseries are saved as one-dimensional trajectories.||No|
|xmean, ymean||false||Used for xy-plots only: If set to „true“ the corresponding timeserie (defined by xLabel and xcomponent or yLabel and yComponent) is averaged and only the mean (const) value is used. If both attributes are set to „true“ than a point is shown, else a horizontal/vertical line.||No|
|yLabel||not set||For multidimensional plots as alternative to the label or name attribute, if the timeseries are saved as one-dimensional trajectories.||No|
|zLabel||not set||For multidimensional plots as alternative to the label or name attribute, if the timeseries are saved as one-dimensional trajectories.||No|
|xstartvalue||false||Used in combination with xoffset. If set to true, than the value defined by xoffset is added to all frames. If the offset defined by xoffset is multidimensional, than the the attribute xoffsetComponent is used to extract the component.||No|
|xoffset||Used in combination with xstartvalue.||No|
|xoffsetcomponent||Used in combination with xstartvalue.||No|
|xsign||false||If set to true, than the sign of the timeserie is reversed.||No|
If the attributes xLabel, yLabel, zLabel are used, the attribute „component“ is ignored. Instead the attributes xComponent, yComponent and zComponent are used.
<Sheet> <Groups> <DefaultGroup name="" leftColor="" rightColor="" normData=""> ... </DefaultGroup> <Group name="" leftColor="" rightColor="" normData=""> <identification> <PropertyGroup name=""> <Property key="" value=""/> ... </PropertyGroup> </identification> </Group> </Groups> </Sheet>
The following table shows the attributes of of the <Group> and <DefaultGroup> elements:
Without a specific configuration for each <Label>-element child of a <Diagram>-element in the reference 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 reference data configuration is needed. Have a look at the following example:
<Diagram name="ABC"> ... <Norm name="NORMPelvisAngles" component="0"/> </Diagram>
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" mean="NORMPelvicTilt" std="NORMStdPelvicTilt"/>
|name||Name 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|
|component||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|
|mean||For 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|
|std||For 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|
<?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>
In the Options panel, you can find it in the Tools menu there is a PlotSheet tab to configure the linethikness of the plots and the font used for the diagram title.
Paramters are saved externally in a non trial-based file. To plot such a parameter as a line, a timerserie is needed in a trial. This can be achived by:
<Real name="ABC" calibrateIncludes="static_calibrate" includes="dynamic">ABCParameter</Real>
„ABCParameter“ is the name of the parameter saved in the session-wide parameter file, e.g. with suffix „.mp“. „ABC“ is the name of the newly created timeserie.