\subsection{Generating Charts -- Background Information and Configuration}

The artifact-server is able to render different types of charts like 1D
(timeseries, vertical- and horizontalprofiles, horizontal-cross-section
profiles (a special case of the horizontalprofiles) and histograms) and 2D-diagrams
(vertical-cross section profiles). This section describes the
possibilities to configure different aspects for interpolating of data and
visualising them in charts.

\begin{lstlisting}
artifact-database
`-- gnv # charts, palettes, interpolation parameters
    |-- charttemplate
    |-- palettes
    |-- horizontal-cross-section-profile
    `-- vertical-cross-section
\end{lstlisting}

\paragraph*{charttemplate}
{\em Function}: The chart template is a global template for setting the
visualization of charts globally like font styles, background, title,
subtitle, etc. Further information can be found in the configuration
file referenced via the attribute {\tt configuration}.

\begin{itemize}
    \item {\tt configuration}: path to the configuration XML-file.
\end{itemize}


\paragraph*{palettes}
{\em Function}: This section lists the available palettes used for rendering
vertical-cross-section charts (2D). Each {\tt palette}-element contains
the following attributes:

\begin{itemize}
    \item {\tt name}: a descriptive name.
    \item {\tt parameter-ids}: identifier used as keys for matching
    between data (from the database) and palette. {\bf The {\tt
    parameter-ids} have to been in sync with the database parameters
    (normally in {\tt MEDIAN.Parameter})}
    \item {\tt description}: a description.
    \item {\tt file}: reference to the defintion of the palette.
\end{itemize}

For defining ranges for a palette, a range is definied by:

\begin{itemize}
    \item {\tt index}: Index for accessing the explicit range from the
    program logic. 
    \item {\tt from}: lower limit of a range.
    \item {\tt to}: upper limit of a range
    \item {\tt rgb}: Red-Green-Blue (RGB) value for rendering the range
    \item {\tt description}: description for rendering the legend. For
    special characters use HTML-encoded values like {\tt \&lt;} for $<$
    or {\tt \&gt;} for $>$.
\end{itemize}


\paragraph*{horizontal-cross-section-profile}

{\em Function}: Parameterization for the interpolation algorithm for
horizontal-cross-section-profile calculating the interpolated value
along the distance.

\begin{itemize}
    \item {\tt samples}: Number of samples calculated for a
    interpolation along the passed geometric line.
\end{itemize}


\paragraph*{vertical-cross-section}
{\em Function}: Parameterization for the interpolation algorithm for
vertical-cross-sections (2D-charts).

\begin{itemize}
    \item {\tt samples}: Parameters for defining the interpolation grid.
    {\tt width} for horizontal distances; {\tt height} for the vertical
    distance.
    \item {\tt ground}: {\tt interpolation} method for calculating the
    interpolation from the last measured value against the seafloor.
    Available methods are {\tt nearest-neighbor | bilinear | bicubic}.\\
%%    FIXME: Could not find nn and bicubic in the code ...
    {\tt fill-color}: setting the file color for the seafloor in the
    diagram.
\end{itemize}
