Semaphor
Visuals

Matrix Table

Build expandable tables, explore grouped data, and export Matrix results to CSV or PDF.

A Matrix table summarizes measures across row and column groups. Use it to compare categories, expand into more detail, and show subtotals and grand totals without loading the entire table at once.

For example, compare Sales and Profit by Region, then expand a region to see its Cities, with Product Category across the columns.

Build a Matrix table

Select the Matrix table visual in the editor, then drag fields into the shelves beside the preview:

ShelfWhat to addExample
RowsFields to group down the table, from broadest to most detailedRegion, then City
Pivot ColumnsFields to group across the tableProduct Category
MetricsValues to summarizeSum of Sales, Sum of Profit

The order of fields in each shelf determines the hierarchy. Open a field's settings to adjust options such as its label, aggregation, or date grouping. Configure row and column totals to show the summaries your readers need.

Use filters to narrow the data included in the table. For example, select a date range before comparing sales across regions.

Totals

Each row and column level can show a subtotal, and each axis a grand total. Open a level's settings to turn its subtotal on or off, place it before or after its group, and give it a label. The grand total's options are under Row totals and expansion and Column totals and expansion in the table settings.

  • Labels in your own words. Type a label such as Total for {member} or {member} subtotal, and {member} becomes the group's name: "Total for Furniture". Leave the label empty to show "Furniture Total". The grand total label doesn't use {member}, because the grand total covers every group.
  • Skip subtotals that repeat one row. When a group has only one row, its subtotal shows the same numbers again. Turn on Skip subtotals that repeat one row in the axis's totals settings to leave those out. When one group sits alone inside another, the outer subtotal is left out and the inner one carries the numbers.

Totals are calculated from your data, not added up from the rows shown, so the total of an average or a ratio, such as margin, is the true figure for its group. The dashboard, CSV and PDF exports, and reports show the same labels and skip the same subtotals.

Explore the table

Expand a row or column group to see the next level of detail, and collapse it to return to the summary. Scroll to explore additional rows and columns. Semaphor loads more data as needed, so the portion currently visible is not the entire result.

There is no fixed total row or column count for browsing. The amount you can explore depends on the complexity of the table and the performance of its data source. This does not mean every Matrix can be exported as one file: exports have separate limits.

Viewing and copying limits

ItemLimit
Row hierarchy8 levels
Column hierarchy8 levels
Measures16
Copy selection10,000 cells and 1 MiB of text, whichever is reached first

Region > Country > City uses three row levels, regardless of how many cities exist. Similarly, a column field with many categories still uses only one level.

Wait for selected cells to finish loading before copying. For larger selections, use an export instead.

Export your Matrix

Open the visual's export options and choose the content to include. Available options depend on the visual's download permissions.

Content optionWhat it includesFormats
Matrix layout: Current expansionThe table with your current groups expanded or collapsed, including matching rows beyond the visible screenCSV, PDF
Matrix layout: All detail levelsThe table expanded through all row and column detail levelsCSV, PDF
Flat aggregate CSVGrouped values at the most detailed row and column levels, with each grouping field in a separate columnCSV

Current expansion or all detail levels

Choose Current expansion to preserve which groups are open or closed. This is not a screenshot or a download of only the cells already loaded in your browser. Semaphor retrieves the data needed for the selected expansion.

Choose All detail levels when you need the full expanded hierarchy. Both layout options respect the table's filters, ranking settings, and configured totals. CSV preserves the row and column arrangement; PDF is suited to sharing a formatted report.

How a Matrix prints as PDF

A Matrix PDF reads like a report, whichever layout the dashboard shows:

  • One column per row field. Each group label prints once, and the rows below it stay blank until the next group. If your Matrix uses the tabular layout with repeated labels, the PDF repeats them too.
  • Subtotals after their group, labeled as you set them (for example "Central Total").
  • Readable numbers. A measure without its own number format prints with thousands separators and a fixed number of decimals: none when every value is whole, two otherwise. Set a number format on the measure to control it.
  • Clean page breaks. A total stays on the page of the rows it sums, and a group never leaves its first row alone at the bottom of a page.
  • Wide tables. Semaphor first tries landscape and larger paper. A Matrix that is still too wide prints in bands: each band repeats the row labels, keeps a column member's measures together, and is captioned with the members it covers, such as "Region: West to Grand Total (4 to 5 of 5)".

The rows, totals, and labels are the same as on the dashboard. To choose the page size, orientation, or subtotal position yourself, add the Matrix to a paginated report.

Flat aggregate CSV

Choose Flat aggregate CSV to work with grouped results in a spreadsheet or another analysis tool. For example, a row can contain Region, City, Product Category, Sales, and Profit rather than spreading categories across the page.

Flat exports do not include subtotal rows, grand-total rows, or an Others summary. They contain aggregated results, not the underlying individual source records.

Excel (.xlsx) export is not currently available for Matrix tables. You can open a CSV file in Excel or another spreadsheet application. Flat export is not available as PDF.

Export limits

These limits apply to the requested export, not just the rows currently visible on screen. The first applicable limit reached determines how much fits in one export.

ExportMaximum rowsMaximum cellsMaximum file size
Matrix layout CSV1,000,0005,000,0001 GiB
Flat aggregate CSV1,000,000No separate total-cell limit1 GiB
Matrix PDF5,000Subject to the formatted-data limit below50 MiB

For layout CSV, the cell count includes row-label columns, the header row, totals, and blank cells, not just populated measures. For example, an export with 50 columns can contain at most 99,999 data rows plus its header before reaching the 5,000,000-cell limit. Displayed totals also count toward the row limit.

PDF exports are additionally limited to 100 pages and 2.5 MiB of formatted table data used to create the document. Long text, many columns, or extensive formatting can reach this data limit before the row or page limit. Wide tables that span multiple pages also use more of the page allowance. The formatted-data limit is separate from the final PDF file size.

For reference, 1 GiB is 1,024 MiB; 1 MiB is 1,048,576 bytes.

Export time

CSV exports run in the background and have a maximum duration of 30 minutes. You can have up to three background exports in progress at a time. PDF data preparation has a maximum duration of 4 minutes 30 seconds, before the document is rendered.

These are maximums, not guaranteed completion times or capacities. Complex queries and very wide or text-heavy tables can reach processing limits earlier. An export that exceeds a limit fails rather than returning a successful download with silently omitted rows.

If an export is too large

  • Narrow the date range or add filters to reduce the data included.
  • Remove unnecessary column groups or measures.
  • Choose Current expansion instead of All detail levels when summaries are sufficient.
  • Use CSV instead of PDF for larger results, or Flat aggregate CSV when you do not need the expanded table layout.
  • Divide the export into smaller, non-overlapping date ranges or categories.

Retrying the same export does not raise its limits. If the table reports a temporary loading error, retry after the data source recovers; if it reports that an export is too large, reduce the requested content first.

On this page