# SmartVisuals Likert for Power BI

> SmartVisuals Likert draws survey batteries in Power BI like a research agency: diverging stacked bars with the neutral split on the axis, N/A detached, top and bottom box nets, means, tracker mode, benchmark deltas, and significance letters between segments on weighted effective bases.

- Page: https://www.smartvisuals.io/visuals/likert
- Fields and settings: https://www.smartvisuals.io/visuals/likert/settings
- Microsoft Marketplace: https://marketplace.microsoft.com/en-us/product/smartvisuals.smartvisuals-likert?tab=overview
- Package: https://www.smartvisuals.io/downloads/smartvisuals-likert-1.0.1.0.pbiviz
- Sample report (zipped .pbip): https://www.smartvisuals.io/samples/smartvisuals-likert-sample-1.0.1.0.zip
- Price: Free tier for every viewer; premium $1.99 per user per month or $19 per user per year on Microsoft Marketplace, with a 30-day free trial. Premium works in edit mode without a licence; unlicensed viewers see the free tier, never a blocked visual.
- Certified by Microsoft: yes
- Version: 1.0.1.0
- GUID (visualType and publicCustomVisuals): `likertChartC10A5AA51A7D4B5CACF036FDC102623C`

## What is free

- **The best unweighted Likert rendering on the shelf**: Neutral auto-centred, custom or none; reverse scale; a collapsed disagree / neutral / agree view; N/A detached with in or out-of-base choice; % labels with a minimum-size threshold; sorting by top box; legend; bases (n=); means; margins of error; an All statements row.
- **Tracker mode**: Add a Wave field and the bars show the latest wave with the change of every top box since the previous one.
- **Dimensions and benchmarks**: A Group field turns the battery into sections with pooled score bars; a Benchmark measure shows the delta against your norm on every statement; a Question Text field carries full wording into tooltips.
- **Says the finding**: A smart caption with the highest and lowest statement, the strongest dimension and what beats the norm; an agency footnote with base, weighted and effective n and source; Quick Styles.
- **Every cosmetic option**: Four themes, fonts, positive / negative / neutral ramps, a colour swatch per answer named by the answer itself, corner radius, bar thickness and gaps between segments.

## What premium adds

- **Segment comparison**: Add a Segment field and every statement splits into groups lettered A/B/C against each other; low bases hatched, flagged with * and excluded from tests; the footer explains the letters.
- **Weighted results**: Map Sum of Weight and Sum of Weight squared and every percentage and test uses Kish effective bases.
- **Vs-total, vs-benchmark and wave tests**: Each statement's top box tested against the rest of the battery (up / down markers), against your norm (check mark) and against the previous wave, at 90, 95 or 99 % confidence.

## Fields

| Field | Internal name | Takes | Needed | What it is for |
| --- | --- | --- | --- | --- |
| Question | `question` | Column | Optional | One row of the battery per question (statement) |
| Answer (scale) | `answer` | Column | Optional | Scale answers in model sort order (use Sort By Column on the answer field) |
| Value | `value` | Measure | Optional | Respondent count — or Sum of Weight for weighted results |
| Segment (comparison) | `segment` | Column | Optional | Optional (premium): compare groups side by side with significance letters |
| Sum of Weight² (significance) | `weightsq` | Measure | Optional | Optional: SUM(weight²) enables effective bases for weighted significance testing |
| Dimension / Group | `group` | Column | Optional | Optional: the section a statement belongs to (Leadership, Tools, …) — drawn as a header with its pooled score |
| Question Text | `questionText` | Column | Optional | Optional: the full wording behind a short question code — shown in tooltips, the caption and the footnote |
| Benchmark (top box) | `benchmark` | Measure | Optional | Optional: a norm or benchmark for each statement's top box, as a fraction (0.62) or percent (62) — the delta shows next to the net |
| Wave / Period | `wave` | Column | Optional | Optional: tracker mode — the bars show the latest wave and the top box its change since the previous one |

## Format pane

Each card is a key under `visual.objects` in a PBIR visual.json; each setting is a property of it. Toggles take `true`/`false`, choices and text a value in single quotes (`'auto'`), numbers a `D` suffix (`12D`).

### Theme (`theme`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Theme | `selectedTheme` | `smartvisuals` (SmartVisuals), `dark` (Dark), `clean` (Clean (White)), `slate` (Slate) |
| Transparent Background | `transparentBg` | On / off |
| Quick Style | `stylePreset` | `custom` (Custom (keep my settings)), `agency` (Agency deck), `executive` (Executive summary), `compact` (Compact tracker) |

### Scale (`scaleSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Neutral Handling | `neutralMode` | `auto` (Auto (middle of odd scale)), `none` (No neutral), `custom` (Custom position) |
| Neutral Position (1-based) | `neutralIndex` | Number |
| Reverse Scale Order | `reverseScale` | On / off |
| N/A Answer Labels (comma-separated) | `naLabels` | Text |
| Include N/A in Base | `naInBase` | On / off |
| Collapse Scale (disagree / neutral / agree) | `collapseScale` | On / off |

### Colors (`colorSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Positive Side | `positiveColor` | Colour |
| Negative Side | `negativeColor` | Colour |
| Neutral | `neutralColor` | Colour |
| N/A | `naColor` | Colour |

### Bars (`barSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Corner Radius | `cornerRadius` | Number |
| Bar Thickness (%) | `thickness` | Number |
| Gap Between Segments | `segmentGap` | Number |

### Answer Colors (`answerColors`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Color | `fill` | Colour |

### Labels (`labelSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Show % in Segments | `showPct` | On / off |
| Decimal Places | `decimals` | Number |
| Min Segment % to Label | `minSegmentPct` | Number |
| Font Size | `fontSize` | Number |
| Font | `fontFamily` | `inter` (Inter), `segoe` (Segoe UI), `arial` (Arial), `georgia` (Georgia) |
| Font Color | `fontColor` | Colour |
| Show Base (n=) | `showBase` | On / off |

### Nets (Top/Bottom Box) (`netSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Show Top Box | `showTopBox` | On / off |
| Show Bottom Box | `showBottomBox` | On / off |
| Box Size (scale points) | `boxSize` | Number |
| All Statements Row | `showTotalRow` | On / off |
| Benchmark Label | `benchmarkLabel` | Text |
| Show Change vs Previous Wave | `showWaveDelta` | On / off |
| Show Margin of Error (±) | `showMarginOfError` | On / off |

### Sorting (`sortSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Sort Questions By | `sortBy` | `data` (Data order), `topDesc` (Top box (high → low)), `topAsc` (Top box (low → high)) |

### Legend (`legendSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Show Legend | `show` | On / off |
| Position | `position` | `bottom` (Bottom), `top` (Top) |

### Means (`meansSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Show Mean (scale 1..k) | `showMean` | On / off |
| Decimal Places | `meanDecimals` | Number |

### Significance (Premium) (`significance`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Test Top Box vs Total | `enabled` | On / off |
| Confidence Level | `confidence` | `90` (90 %), `95` (95 %), `99` (99 %) |
| Min Base for Testing | `minBase` | Number |
| Higher / Letters (empty = theme) | `positiveColor` | Colour |
| Lower (empty = theme) | `negativeColor` | Colour |
| Explain Letters in Footer | `showLetterLegend` | On / off |
| Hatch Low Bases | `lowBaseHatch` | On / off |

### Smart Caption (`insights`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Show Caption | `show` | On / off |
| Position | `position` | `top` (Top), `bottom` (Bottom) |

### Footnote (`footnote`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Show Footnote | `show` | On / off |
| Template ({base} {n} {neff} {wave} {question} {source}) | `template` | Text |
| Source | `source` | Text |

### Dimensions (`groupSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Dimension Score Bars | `groupBars` | On / off |
