The table context menu (available by right-clicking) gives access to two types of filtering: [Filter by Tree...] and [Filter by Expression...] (the latter since FEWS-2014.02). These options, which can be applied simultaneously, allow the user to apply a filter to data shown in the table, hiding all records that do not satisfy the filter criteria. With the filter(s) applied, data can be selectively copied to clipboard or edited. The display in the graph is not affected by the filters.

Filter by Tree

This option allows the user to filter records based on a number time series properties: user, comment, and flagSource (validation). The main branches of the filter tree are formed by the time series that are selected. The properties then appear as subbranches, and for each property the available options are listed as the tree leaves.

When selecting one of the leaves, the data shown in the table is shrunk to all records that have the specified property. When choosing multiple leaves from the same branch, the data selection is expanded to the union of the individual leaves. A filter based on leaves of different branches will shrink the data selection to the intersection of the individual branches.  For example, suppose the user chooses the leaves HN and ROF in the validation branch of time series A, and leaf HN in the validation branch of time series B. In that case only those records are shown for which the flagSource of time series A equals HN or ROF, and the flagSource of time series B equals HN.

Figure 1: Filter by Tree.

Filter by Expression

This option (available sine FEWS-2014.02) allows the user to filter the records based on expressions, involving the active table columns. The expressions are therefore not limited to the data column, but may also involve the user or comment column. A column is referenced by its alphabetical index (mind to use capitals). The following operators and functions are available for constructing expressions:

OPERATORS

operators

description

example

< > <= >=relationsA>=10
== !=equalityA!=10

+ -

add, subtract

A+3>10

* /

multiply, divide

A*0.5>10

^

power

A^2>10

&&logical ANDA>10&&E>5
||logical ORA>10||E>5

FUNCTIONS

function

description

example

sum

sum of values

sum(A,E,...)>10

abs

absolute value

abs(A)>10

pow

power function

pow(A,2)>10

sqrt

square root

sqrt(A)>10

min

minimum of list

min(A,E)>10

max

maximum of list

max(A,E)>10

average

average of list

average(A,E)>10

exp

exponential (e^x)

exp(A)>10

ln

natural logarithm

ln(A)>10

log

logarithm base 10

log(A)>10

atanh

inverse hyperbolic tangent

atanh(A)>10

acosh

inverse hyperbolic cosine

acosh(A)>10

asinh

inverse hyperbolic sine

asinh(A)>10

tanh

hyperbolic tangent

tanh(A)>10

cosh

hyperbolic cosine

cosh(A)>10

sinh

hyperbolic sine

sinh(A)>10

atan

arc tangent

atan(A)>10

acos

arc cosine

acos(A)>10

asin

arc sine

asine(A)>10

tan

tangent

tan(A)>10

cos

cosine

cos(A)>10

sin

sine

sin(A)>10

isMissing

check for NaN

isMissing(A)

An example application is shown in Figure 2.

Figure 2: Filter by Expression.