Install any skill in seconds. Free to start, no credit card required.
Get Started Free →data-goblin/svg-visuals
SVG generation via DAX measures and extension measures with ImageUrl data category for inline visualizations in PBIR reports. Automatically invoke when the user mentions "SVG visual", "DAX sparkline", "SVG measure", "inline graphics with DAX", "ImageUrl data category", "extension measure", or asks to create any DAX-generated chart (progress bars, bullet charts, KPI indicators, data bars, gauges, donut charts, lollipop charts, dumbbell charts, status pills, overlapping bars, boxplots, IBCS bars,
Passed 18 of 20 test cases with the skill, and 9 of 20 without it.
and 10 more in the full report
10 fixed10 passed either way2 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 10 test cases the skill fixed. Same model, same prompt, with and without the skill.
In PBIR visual definitions, what Schema value must be specified in the SourceRef object when referencing a measure defined in reportExtensions.json rather than the main model?
| Checked | Without skill | With skill |
|---|---|---|
| Sets the Schema property in SourceRef to extension. | Missed | Passed |
The instructions your model reads when the skill loads.
Use
pbirfor every report mutation. Thepbir-formatskill is read-only schema context. If the CLI is unavailable or lacks an operation, stop and report the gap.
Generate inline SVG graphics using DAX measures that return SVG markup strings. These render as images in table, matrix, card, image, and slicer visuals. Store as extension measures in reportExtensions.json.
data:image/svg+xml;utf8,dataCategory is set to ImageUrltableEx): grid.imageHeight / grid.imageWidth -- references/svg-table-matrix.mdpivotTable): same as table -- references/svg-table-matrix.mdimage): sourceType='imageData' + sourceField -- references/svg-image-visual.mdcardVisual): the image object (image area) or cardImage (callout image) -- references/svg-template-matrix.md, patterns in references/svg-card-slicer.mdadvancedSlicerVisual): one image per button through the image "Select from data" slot -- references/svg-template-matrix.mdBefore writing DAX by hand, check references/svg-template-matrix.md: it maps each pattern (bullet, progress, pill, sparkline, dumbbell, diverging, delta, pin, gauge) to the hosts it fits (an SVG on its own goes in an image visual, a card is for a number), shows the verified PBIR wiring per host, and gives the one-step pbir visuals svg / pbir add gauge-card commands that write the pattern as a thin report measure and wire it in. Hand-write SVG DAX only for a shape no template covers.
Before writing DAX, design the SVG visually:
/tmp/mockup.svg and open it in a browser to preview layout, colors, and proportions.# -- e.g., fill='#2B7A78'. Never use %23 URL encoding or named colors. Always hex.Create the extension measure in reportExtensions.json manually (see the pbir-format skill in the pbip plugin for JSON structure).
test cases passed, vs 9 / 20 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.