Dot Matrix Chart

Rebuilds the dot-matrix chart with a dot-matrix layout transform, direct point geometry, row labels, and a unit note.

Dot Matrix Chart
Gallery Dot Matrix Pipeline pipeline

Data Sources

3

Fields

14

Scales

2

Layers

5

Glyphs

41

rect 2 / point 34 / text 5

Email: dot 1 represents 5Email: dot 2 represents 5Email: dot 3 represents 5Email: dot 4 represents 5Email: dot 5 represents 5Email: dot 6 represents 5Email: dot 7 represents 5Email: dot 8 represents 5Email: dot 9 represents 2Search: dot 1 represents 5Search: dot 2 represents 5Search: dot 3 represents 5Search: dot 4 represents 5Search: dot 5 represents 5Search: dot 6 represents 5Search: dot 7 represents 5Search: dot 8 represents 5Search: dot 9 represents 5Search: dot 10 represents 5Search: dot 11 represents 5Search: dot 12 represents 3Social: dot 1 represents 5Social: dot 2 represents 5Social: dot 3 represents 5Social: dot 4 represents 5Social: dot 5 represents 5Social: dot 6 represents 5Social: dot 7 represents 4Referral: dot 1 represents 5Referral: dot 2 represents 5Referral: dot 3 represents 5Referral: dot 4 represents 5Referral: dot 5 represents 5Referral: dot 6 represents 2Email (42)Email (42)Search (58)Search (58)Social (34)Social (34)Referral (27)Referral (27)Each dot represents up to five units.Each dot represents up to five units.

Build Path

Gallery Dot Matrix Pipeline

This example is rebuilt from gallery data source category-counts by recipe dotMatrixChart: raw table rows -> TabularSource -> pipeline drafts -> analyzeAuthoringDrafts() -> materialized ChartSpec -> compileChart() -> SceneGraph -> SVG. The graph below shows the authored pipeline stage.

Pipeline recipe graph

7 pipelines
8 nodes
7 edges

Data Flow Diagram

0/396 nodes
0/730 edges
396 hidden

Select a glyph to highlight its complete source path.

Scope

Roles

source
transform
field
scale
layer
param
glyph

No matching flow nodes

Adjust search, scope, or role filters.

Available Data

3 tables
1 transforms

Imported table

source_gallery_dotmatrixchart
raw
6 columns
feeds pipeline_dot_matrix_layout_transform

ChartSpec

{
  "id": "gallery.dotMatrixChart",
  "data": [
    {
      "id": "source_gallery_dotmatrixchart",
      "rows": 4
    },
    {
      "id": "source_matrix_dots",
      "rows": 34
    },
    {
      "id": "pipeline_unit_note_layer_literal_text",
      "rows": 1
    }
  ],
  "transforms": [
    {
      "id": "pipeline_dot_matrix_layout_transform",
      "type": "layout",
      "input": "source_gallery_dotmatrixchart",
      "output": "source_matrix_dots",
      "options": {
        "count": 12,
        "errorMethod": "standardError",
        "fit": "contain",
        "groupBy": [
          "category"
        ],
        "includeMax": true,
        "layout": "pipeline_value_dot_matrix_panel_layout",
        "layoutKind": "dotMatrix",
        "layoutMode": "proportionalAngle",
        "mode": "normal",
        "order": [],
        "paddingInner": 5,
        "step": 5,
        "value": "value"
      }
    }
  ],
  "axes": [],
  "grids": [],
  "legends": [],
  "fields": [
    "__rowLabel",
    "id",
    "category",
    "value",
    "label",
    "column",
    "cx",
    "cy",
    "dotIndex",
    "r",
    "representedValue",
    "row",
    "tooltip",
    "text"
  ],
  "scales": [
    {
      "id": "pipeline_category_y_y_scale",
      "type": "band",
      "domain": {
        "source": "field",
        "data": "source_gallery_dotmatrixchart",
        "field": "category",
        "fields": [],
        "includeZero": false,
        "order": "input",
        "reverse": false,
        "symmetric": false
      }
    },
    {
      "id": "pipeline_category_color_color_scale",
      "type": "ordinal",
      "domain": {
        "source": "field",
        "data": "source_gallery_dotmatrixchart",
        "field": "category",
        "fields": [],
        "includeZero": false,
        "order": "input",
        "reverse": false,
        "symmetric": false
      }
    }
  ],
  "layers": [
    {
      "id": "create_chart_surface",
      "mark": "rect",
      "role": "context"
    },
    {
      "id": "pipeline_value_dot_matrix_panel_layout_surface",
      "mark": "rect",
      "role": "context"
    },
    {
      "id": "pipeline_value_dot_matrix_dots_layer",
      "mark": "point",
      "role": "data"
    },
    {
      "id": "pipeline_value_dot_matrix_row_labels_layer",
      "mark": "text",
      "role": "guide"
    },
    {
      "id": "pipeline_unit_note_layer",
      "mark": "text",
      "role": "guide"
    }
  ]
}

Resolved SceneGraph

{
  "scene": "gallery.dotMatrixChart.scene",
  "scales": [
    {
      "id": "pipeline_category_y_y_scale",
      "type": "band",
      "domain": [
        "Email",
        "Search",
        "Social",
        "Referral"
      ],
      "range": [
        306,
        34
      ],
      "bandwidth": 47.18367346938775
    },
    {
      "id": "pipeline_category_color_color_scale",
      "type": "ordinal",
      "domain": [
        "Email",
        "Search",
        "Social",
        "Referral"
      ],
      "range": [
        "var(--colors-blue-9)",
        "var(--colors-green-9)",
        "var(--colors-orange-9)",
        "var(--colors-purple-9)"
      ]
    }
  ],
  "layers": [
    {
      "id": "create_chart_surface",
      "role": "context",
      "zIndex": -10,
      "glyphs": 1
    },
    {
      "id": "pipeline_value_dot_matrix_panel_layout_surface",
      "role": "context",
      "zIndex": 0,
      "glyphs": 1
    },
    {
      "id": "pipeline_value_dot_matrix_dots_layer",
      "role": "data",
      "zIndex": 20,
      "glyphs": 34
    },
    {
      "id": "pipeline_value_dot_matrix_row_labels_layer",
      "role": "guide",
      "zIndex": 20,
      "glyphs": 4
    },
    {
      "id": "pipeline_unit_note_layer",
      "role": "guide",
      "zIndex": 20,
      "glyphs": 1
    }
  ]
}

Glyph Data Tree

5 layers

Full parameter lineage for the active compiler surface.

create_chart_surface

1

pipeline_value_dot_matrix_panel_layout_surface

1

pipeline_value_dot_matrix_dots_layer

34

pipeline_value_dot_matrix_row_labels_layer

4

pipeline_unit_note_layer

1

Glyph Inspector

none

Select a glyph in the chart to inspect resolved params and lineage.