2.4.7 The facetLayout Element

facetLayout => tableLayout setCellProperties[scp1]*
               facetLevel+ setCellProperties[scp2]*

tableLayout
   :verticalTitlesInCorner=bool
   :style=ref style?
   :fitCells=(ticks both)?
=> EMPTY

The facetLayout element and its descendants control styling for the table.

Its tableLayout child has the following attributes

Attribute: verticalTitlesInCorner

If true, in the absence of corner text, row headings will be displayed in the corner.

Attribute: style

Refers to a style element.

Attribute: fitCells

Meaning unknown.

The facetLevel Element

facetLevel :level=int :gap=dimension? => axis

axis :style=ref style => label? majorTicks

majorTicks
   :labelAngle=int
   :length=dimension
   :style=ref style
   :tickFrameStyle=ref style
   :labelFrequency=int?
   :stagger=bool?
=> gridline?

gridline
   :style=ref style
   :zOrder=int
=> EMPTY

Each facetLevel describes a variableReference or layer, and a table has one facetLevel element for each such element. For example, an SPV detail member that contains four variableReference elements and two layer elements will contain six facetLevel elements.

In the corpus, facetLevel elements and the elements that they describe are always in the same order. The correspondence may also be observed in two other ways. First, one may use the level attribute, described below. Second, in the corpus, a facetLevel always has an id that is the same as the id of the element it describes with _facetLevel appended. One should not formally rely on this, of course, but it is usefully indicative.

Attribute: level

A 1-based index into the variableReference and layer elements, e.g. a facetLayout with a level of 1 describes the first variableReference in the SPV detail member, and in a member with four variableReference elements, a facetLayout with a level of 5 describes the first layer in the member.

Attribute: gap

Always observed as 0pt.

Each facetLevel contains an axis, which in turn may contain a label for the facetLevel (see The label Element) and does contain a majorTicks element.

Attribute: labelAngle

Normally 0. The value -90 causes inner column or outer row labels to be rotated vertically.

Attribute: style
Attribute: tickFrameStyle

Each refers to a style element. style is the style of the tick labels, tickFrameStyle the style for the frames around the labels.