Product Documentation

Select a Product:

Find Text:
Submit a question:

Not seeing an answer to a question you might have? You can ask it here and we'll try to update the documentation to address it. If you're making a feature request or reporting a problem, please create a support item for it, instead!


LLM AI Charts and Maps for Power BI

See everything it can build The AI Gallery shows all 125 types, charts, maps, mini-apps and more, each with a picture, what it's good for and the data it fits. Open the AI Gallery

Purpose

LLM AI Charts and Maps for Power BI harnesses the power of Large Language Models to generate chart rendering code which is combined with your data and executed. This enables the presentation of dozens of possible chart types, depending on the characteristics of your data. You can use our Azure OpenAI services with zero setup on your part - or you can use your own LL model which is deployed in Azure AI foundry. You can choose how much or little data is shared with the LLM, to address privacy questions. You can make adjustments to the generated output using natural language prompts.

Data Bucket

The data requirements for the visual include 3 bucket fields, listed here:

Field Type Description
Values Any One or more fields from the semantic model. Taken together with any Group by fields, these form the data frame the chart is built from, and they set its granularity: each unique combination of these field values becomes one row. Despite the name, fields here can be categorical or continuous (text, dates, or numbers).
Measures Any Zero, one or more DAX measures. Unlike Values and Group by, measures do not affect granularity: each measure is evaluated at the grain set by your Values and Group by fields — one value per row of that combination (the most detailed level those fields define).
Group by Any Optional. One to three fields that define the primary grouping (series / breakdown) for the chart. Together with Values, they help set the data frame's granularity, and they become its leading hierarchy levels — enabling group-level highlighting, drill-through, and tooltips.

Settings

Data and Interaction
Field Default Description
Generating and Versioning
Version Number (per data shape) Which saved rendering to show. Versions are numbered per DATA SHAPE, not per visual: every chart built from the same bound columns shares one sequence, so a brand-new visual may open at 3 because two earlier charts on those columns took 1 and 2 - nothing was generated or charged twice. Generating increments it. Set to 0 to force a fresh rebuild.
Identifier Optionally provide a label that will be used to uniquely identify this instance of the visual across all reports. This can be used to 'share' rendering logic in different dashboards (when using the same data fields).
Change Creates New Off When disabled (default), the current chart is kept when your data fields change — you rebuild manually (set 'Version Number' to 0 or click the rebuild button). When enabled, changing the data fields automatically creates a new version. Either way, changing a generation setting (model, chart type, colors, etc.) never forces a rebuild on its own — it applies the next time you click Generate.
Allow Generate in View Mode Off When enabled, report users can choose to invoke generation of new layouts, at run-time, via the generate button. These will not be saved.
Retry Count 2 Controls if / how many retries may be attempted if the generated code fails to render due to a client-side error. You will incur credit usage for retries, but larger values increase your chance of successful rendering. '0' disables retries.
Virtual Width (px) Generate as if the visual were this many pixels wide, whatever size it actually is right now. Useful when you are authoring at a working size but intend to resize the visual later - generate at the final size, then resize. Blank or 0 (the default) uses the real measured width. NOTE: this changes which charts are offered and how dense the generated chart is, but NOT how it scales. A chart generated for 1200px and viewed at 300px scales correctly and may still be illegible, because the number of ticks, labels and marks was chosen for the stated size. (in 2.3)
Virtual Height (px) Generate as if the visual were this many pixels tall, whatever size it actually is right now. Pairs with Virtual Width; either can be set on its own, and the one left blank uses the real measured dimension. Blank or 0 (the default) uses the real measured height. The density caveat on Virtual Width applies here too. (in 2.3)
Save Thumbnails Off When enabled, initial renderings of versions can be saved at bizintelligencechampions.com, to be used as thumbnail images.
AI Reviews Each New Chart Off Licensed accounts only. When enabled, the first rendering after each Generate is captured and reviewed by the AI for rendering problems or a clear miss from what you asked. If a fix is warranted it is applied as a new version and the chart re-renders; the chart shows a small 'reviewing' mark until the review completes. A review that finds nothing to change costs nothing. Default off. (in 2.2)
Engine and Model
Render Type Leave to visual Which engine renders the chart. 'Static Chart (Python)' returns a fixed image with no hover, tooltips, cross-filter, or selection. 'Interactive (Plotly)' and 'Interactive (D3)' produce live charts with click-to-cross-filter, hover tooltips, and selection highlighting; Plotly suits standard statistical charts, while D3 covers more bespoke / custom layouts. 'Leave to visual' (default) lets the engine pick the best renderer for your data and chart type.
Language N/A Constrains which engine the visual auto-picks when Render Type is 'Leave to visual': 'JavaScript' keeps it to D3, 'Python' to Plotly/matplotlib. 'N/A' (default) lets it use any engine. Ignored when Render Type names a specific engine. (in 2.0)
Reasoning Mode Leave to visual How many LLM passes are used. More passes cost more credits but usually improve results. 'Leave to visual' (default) picks a mode by heuristic. 'Code pass only' generates the chart in a single pass - fastest and cheapest, with no chart-selection review. 'Pre-validate pass' adds a validator that picks the most suitable chart before code is written. 'Pre-and-post validate pass' adds both that validator and a post-generation proofread, for the highest quality. 'Code and post-validate pass' skips the validator (the visual's own engine picks a valid chart) and runs only the proofread. (in 2.0)
Model Temperature 30 For models that support it, controls how creative versus deterministic the generated code is. Scale is 1-100 and maps linearly onto the selected model's own range: 100 is the highest temperature the model accepts (e.g. 2.0 for OpenAI/DeepSeek chat models, 1.0 for Anthropic Claude), 50 is half of that, and 1 is close to fully deterministic. Because models differ, 50 equals the native default on a 2.0-range model but is half the native default on Claude. Lower values produce more reproducible but less varied chart designs; higher values produce more creative but less predictable output. Models that do not accept a temperature ignore this setting. On retry after a code-generation error, the server automatically reduces temperature for better instruction adherence.
Execution Timeout (seconds) 120 If the client-side rendering takes longer than this number of seconds, it will automatically be canceled.
Context You Provide
Commentary You can optionally provide an explanation of the data, constraints, and any other relevant information. Limit: 500 characters for licensed accounts; ignored entirely for freemium requests. (Bring-Your-Own-Key accounts have no limit.) Longer text is truncated server-side.
Field Descriptions You can optionally provide a description for one or more fields in your data source. This can help provide context for better code generation. You can provide a description for each field on sequential lines, or prefix each line with 'field name:' to name specific fields (matching the display names in the data well). Limit: 500 characters total across all descriptions for licensed accounts; ignored entirely for freemium requests. (Bring-Your-Own-Key accounts have no limit.) Longer text is truncated server-side.
Industry Context N/A Optional — tells the model what industry this data belongs to, so it interprets your columns through the right lens (e.g. a 'spend' column in Logistics is freight/fuel, not ad spend). This helps it infer genuinely valid domain measures AND avoid coining ones the data doesn't support. 'N/A' (default) leaves the model to infer context from the column names alone. (in 2.0)
Chart Selection
Choose Chart Type on Generate On When enabled (default), clicking Generate first shows the 'What fits?' list of chart types that qualify for your data, so you can pick one — or click 'Visual Choice' to let the visual decide, which is what Generate did before. The list is free: it uses no credits, and nothing is generated until you choose. On a small tile there is no room to show it, so Generate builds a chart straight away. Turn this off to go back to one-click Generate everywhere. (in 2.4)
Favor General Type N/A Steers the engine toward a family of chart types. 'Traditional' favors familiar charts (bar, column, line, pie, scatter); 'Non-traditional' favors richer forms (treemap, sunburst, Sankey, chord, heatmap, etc.). 'N/A' (default) leaves the choice to the engine. Note: choosing 'Traditional' also turns off the 'Chart Variety' nudge, since the two work against each other.
Level of Detail Leave to visual How much of your data you want to SEE. "High" favors charts that draw every single observation as its own mark — scatter, beeswarm, strip. "Medium" favors charts that use every row but show you the distribution rather than the points — box, violin, histogram. "Low" favors one mark per category — bars, cards, pies. "Leave to visual" (the default) changes nothing at all. This is a strong preference, not a filter: it reorders the charts that already fit your data, and a chart type you pick explicitly is always honored. Takes effect on the next Generate or "What fits?" — it does not redraw the chart already on the canvas. (in 2.2)
Chart Variety Probability (0–1) that the engine deliberately favors a less conventional — but still semantically sound — chart instead of the single most obvious one for your data. Higher = more variety across regenerations. Blank = use the server default. Correctness always wins: if only the obvious chart can represent the data honestly, it is kept. Ignored when you've forced a specific chart type or set 'Favor General Type' to 'Traditional'. (in 2.0)
Allow Generated Measures Leave to Visual Whether the LLM is encouraged to invent derived measures (ratios, z-scores, period-over-period change, etc.) when picking a chart. 'Yes' tells the LLM to always propose 2-4 derived measures and refuse plain bar/line charts of raw values. 'No' suppresses derived-measure generation entirely — the chart reflects raw columns only. 'Leave to Visual' (default) lets the server roll a die (currently 90% yes / 10% no) so most generations get the richer treatment while occasional runs surface a baseline view. (in 2.0)
Favor Overlay Leave to Visual Strongly suggests adding the chosen analytical overlay so you get it without asking. The engine still applies it only where it fits the chart + data (and may add any measures it needs). 'Leave to Visual' lets the engine decide. (in 2.0)
Data Shaping
Aggregation Auto How a measure is summarized per group/region/mark when the chart aggregates (e.g. the colour of each region on a map, the height of each bar). 'Auto' (default) sums additive amounts and averages rates/ratios/percentages. Choose Sum, Average, Median, Min, Max, Count (rows), or Distinct count to force it. Applies to the chart's OWN aggregation on top of any Power BI field-well aggregation; D3 charts re-summarize on the next render, Python-drawn charts apply at the next Generate. You can also just say it in your request (e.g. 'colour by average orders'). (in 2.1)
Favor Date Summary N/A Suggests the time grain to roll dates up to before charting (Day, Week, Month, Quarter, Year, Decade). 'N/A' (default) leaves the choice to the engine based on the date range.
Reassemble Split Dates On When enabled (default), if a date field was split by Power BI's date hierarchy into separate Year / Quarter / Month / Day columns, the visual reassembles them into a single date column so it can detect trends, seasonality and time-based patterns. Turn off to keep the split parts as independent categories. Applies to NEW generations; an existing chart keeps the layout it was built with until you rebuild. (in 2.0)
Favor Limit To N/A Suggests filtering to a subset before charting: 'Latest' (most recent period), 'Top' / 'Bottom' (highest / lowest by the measure), 'Most common', or 'Outliers'. Use 'Favor Limit Count' to cap how many items are kept, and 'Allow Group to Others' to choose whether the remainder is bucketed into 'Others' or dropped. 'N/A' (default) leaves the choice to the engine.
Favor Limit Count Allows suggesting a limit for the number of groups, categories, etc. (blank or 0 = no limit implied / left to LLM)
Allow Group to Others On When ON (default), limiting (Favor Limit Count / Favor Limit To) groups the remaining values into an 'Others' bucket so nothing is dropped. When OFF, the remainder is dropped — a 'leaderboard' showing only the limited set. (in 2.0)
Group to Others Label Optional — RENAMES the 'Others' bucket (default name is 'Other'). Grouping the remainder is controlled by the 'Allow Group to Others' toggle, not by this field.
Maximum Rows 250000 No more than this number of rows will be loaded for analysis and rendering. (Larger numbers can have negative performance implications.)
Titles, Labels and Legend
Title Text Leave to Visual Whether the generated chart should render its own title. 'Leave to Visual' lets the visual decide based on viewport size and a randomized preference (small viewports skip the title; otherwise the title is included on roughly 1-in-4 generations). 'Include' forces a chart title. 'Exclude' tells the LLM not to render one — typically because the report already shows a title outside the chart. (in 2.0)
Favor Data Point Values N/A Whether to print data labels - the numeric value drawn on each bar, point, or slice. 'Yes' asks for them, 'No' suppresses them, 'N/A' (default) leaves the choice to the engine (which may omit them when marks are too dense to stay legible).
Legend Placement Auto Where the chart legend (if any) should be drawn. 'Auto' places the legend outside the plot area when the viewport is wide enough (≥ 500 px) and leaves it to the renderer otherwise — and for chart families that already name everything inline (flow/Sankey, whose nodes are labelled), Auto may omit the standalone legend entirely. 'Outside' forces the legend into the chart margin (right or bottom) for maximum plot real estate. 'Inside' keeps it inside the plot area where overlap with the data is minimized. 'None' tells the model to OMIT any standalone legend and rely on the chart's own labels. Single-series charts get no legend regardless of this setting. (in 2.0)
Compactness Leave to visual Controls how aggressively the LLM aggregates high-cardinality columns before placing them on a chart axis. "Spacious" prefers fewer labels with more breathing room; "Compact" tolerates denser axes; "Balanced" is the middle ground. "Leave to visual" lets the server pick a slightly randomized level per request — the default. (in 2.0)
Seasonal Period Markers Only on an even date grid Whether a chart may label a lag or cycle with a calendar period - the 'wk' tag on lag 7 of a correlogram, 'Lag 12 - annual', a period rule on a cycle plot. 'Only on an even date grid' (default) allows the label only where the chart has proved both halves of the claim: every gap between consecutive dates is the same length, AND the lag is a real peak that clears the significance band. A weekday-only series fails the first test - its week is five observations, not seven - and a smoothly decaying correlogram fails the second, so neither gets a marker it cannot support. 'Always' labels the period the chart infers even when the dates are unevenly spaced. 'Never' turns period labels off. Applied on every render, so a change takes effect without re-generating the chart. (in 2.4)
Axes
Value Axis Baseline Fit the data Whether a chart's value axis has to include zero. 'Fit the data' (default) scales the axis to the values themselves, so a series between 720 and 1,490 fills the panel instead of spending half of it below its own minimum. 'Include zero' forces zero into the axis. 'Auto' includes zero only where the marks measure by LENGTH (bars) and fits where they do not (lines, and the band of a difference chart). Bar charts keep their zero baseline under every choice - a bar's length IS its number, so a floating baseline would misstate it. Applied on every render, so a change takes effect without re-generating the chart. (in 2.4)
Maps
Max Map Points 2000 Caps how many points a point map (e.g. North America Bubbles) will plot before the type is no longer offered. Raise it if you know your data and are OK with a busier/slower map. (in 2.1)
Places Without An Exact Location Show at country's largest city What a map does with rows whose place could not be located exactly (a town not in the built-in gazetteer). Those rows are drawn at their country's largest city — which may be nowhere near the place itself — so the map never implies a precision it does not have. 'Show at country's largest city' (default) draws each one there and marks it as a square, with a hover that says so. 'Aggregate to country' replaces them with one bubble per country. 'Skip drawing' leaves them off the map entirely. In every case those rows still count in totals, averages, legends and cross-filtering — only whether they get their own mark changes. (in 2.1)
Interaction
Click Shows Summary On When enabled, clicking on the generated image shows the summary (with any enabled buttons).
Allow Tooltips On When enabled (default), hovering a mark shows a tooltip. Use 'Tooltip Source' to choose between the visual's data tooltip and the chart library's native tooltip. Turn off to suppress hover tooltips entirely.
Tooltip Source Auto (default) Which tooltip shows on hover. 'Auto' (default) uses the chart library's own tooltip for Plotly (purpose-built, shows true aggregates) and the visual's tooltip for D3 (D3 charts usually don't draw their own). 'Visual' always uses the visual's 'Data sample' tooltip, integrated with Power BI (for Plotly it suppresses the library's native tooltip to avoid a double tooltip). 'Chart' always uses the chart library's native tooltip and shows no visual tooltip (a D3 chart may then show none if the generated code didn't draw one). (in 2.0)
Remember Zoom/Pan & 3D Camera On For charts with a view you can move — maps you zoom and pan, and the 3D scatter cube you rotate and zoom: the view you leave is saved with the report and restored the next time it is opened, so everyone who opens the report sees it the way you left it. This is ON by default, because a view you set and come back to is what most people expect. Turn it OFF and the chart always opens at its full extent and its standard camera angle, however you last left it — and note that OFF also means your own view is gone as soon as you switch to another page and back, because Power BI discards the visual when you leave its page and only the saved copy can come back. Either way your view survives resizing and cross-filtering while you stay on the page. A remembered view is discarded if the chart is regenerated, or (for zoom/pan) if the visual is resized substantially, since it no longer describes the same frame. The 3D camera is remembered whichever engine drew the chart. Zoom and pan are remembered on D3 charts; charts drawn by the Plotly engine keep their own zoom and pan behaviour, which has its own controls on the chart. (in 2.2)
Use Default Context Menus Off Off (the default): right-clicking the visual opens Power BI's own context menu, which is where drill through, drill down, Include and Exclude, Show as a table and Copy live. On: the visual leaves the right-click to the browser, so Power BI's menu doesn't open and those actions aren't available from a right-click. In the Power BI service the browser's menu appears instead (for example Copy image on a static chart's picture, and Cut, Copy and Paste in a text box). In Power BI Desktop no menu appears at all. Turn it on only when you need the browser's menu in the service.
Show Plotly Toolbar On Applies only to Plotly interactive renders. When enabled, Plotly's toolbar appears on hover in the top-right corner of the chart, giving users zoom, pan, box-select, lasso-select, autoscale, and reset-axes tools. When disabled, the toolbar is hidden and drag gestures still zoom (single-click cross-filter is unaffected either way). (in 2.0)
Plotly Legend Click Behavior Cross-filter (default) Controls what happens when a user clicks a legend swatch or label on a Plotly-rendered chart. 'Cross-filter' (default) treats the click as a Power BI selection — every row in that category becomes the active filter, dimming non-selected marks here and cross-filtering other visuals on the page (Ctrl/Shift+click accumulates). 'Hide/show trace (Plotly default)' restores Plotly's native behavior of toggling that trace's visibility within this visual only — no cross-filter is sent. 'Disabled' makes legend clicks do nothing. D3-rendered charts ignore this setting (D3 legends don't fire through the same path). (in 2.0)
Plotly Sankey Node Behavior Click to cross-filter (default) Controls what happens when a user clicks a node rectangle on a Plotly-rendered Sankey diagram. 'Click to cross-filter' (default) disables Plotly's node-drag handler so clicks reliably fire as Power BI selections — the click cross-filters other visuals on the page and dims unselected nodes/links here. 'Drag to rearrange (Plotly default)' restores Plotly's native draggable nodes; in this mode clicks are typically consumed by the drag handler and do NOT cross-filter (a known Plotly Sankey behavior). Pick this only when laying-out nodes manually matters more than cross-filter. Applies only to Plotly Sankey traces; other chart types are unaffected. (in 2.0)
Empty-State Messages
No Data Text Shown in place of the chart when a filter or the data itself leaves nothing to draw. Leave blank to use the standard message.
Filtered-Too-Far Text Shown when a cross-filter or slicer narrows the data so far that the saved chart has nothing left to plot — for example, clicking a single node in another visual collapses one axis of a heatmap. Leave blank to use the built-in message. This is distinct from 'No Data Text', which covers a selection that removes every row. (in 2.1)
Privacy and Locale
Privacy Level +Include Column Detailed Stats Controls how much data is shared with the back-end service. Sharing more information can help build more meaningful visualizations. 'Detailed Stats' is the default, where per-column statistics (e.g. the mean) are shared. At 'Detailed Stats' and above, two narrow categories of actual text values are also shared verbatim — to pin correct axis order and stop the model guessing labels it cannot see: (1) recognized ordinal labels (weekday, month, quarter, and survey scales like Likert); and (2) short, low-cardinality category codes — either common generic labels (clothing sizes S/M/L/XL, days, months, Y/N) or alphanumeric codes with at most one letter plus a digit (e.g. 'Q1', 'J-01'), capped at 15 distinct values. All other text values stay obfuscated. Below 'Detailed Stats', NO actual text values are shared. 'Sample Data' additionally sends a few obfuscated sample rows.
Locale Code Override Optionally override the locale used to parse localized values (weekday / month names for axis ordering and cyclical-axis detection, and localized period labels). When blank (the default), the Power BI report/host locale is used. Set a BCP-47 tag like 'de-DE', 'fr-FR', or 'en-US' to force a specific locale — useful for testing, or when the report locale doesn't match the language of the data's labels. (in 2.0)

Formatting
Field Default Description
Chart Appearance
Suggested Font If provided, this font family name will be suggested to the LLM as the primary font to use.
Caption Inside Chart Off When enabled, a short one-line description of what the chart is showing (chart type, derived measures, non-default aggregations) is rendered directly under the chart title in addition to appearing in the hover summary. Default off keeps that detail in the hover panel only. (in 2.0)
Label Contrast Fail-safe Leave to Visual After a chart renders, recolour in-mark text labels (sitting on a coloured tile/bar/cell) whose colour is hard to read against the mark's ACTUAL rendered fill — to black or white for legibility (skips labels that already read well; covers D3 and Plotly SVG charts). 'Leave to Visual' lets the visual decide per instance; 'Enabled' always applies it; 'Disabled' never does — choose Disabled if you ask the LLM for specific label colours you don't want this to override. (in 2.0)
Legend Placement Fix-up Smart Placement How the visual adjusts legend placement AFTER a chart renders, to keep the legend from overlapping chart content. This is independent of the generation-time 'Legend Placement' hint (which steers the LLM). 'LLM Only' makes NO runtime adjustment — placement comes solely from how the chart was generated (the prompt prose still applies). 'Leave to Visual' (default) and 'Smart Placement' run the SAME fix-ups — re-anchoring a Plotly legend the code placed inside the plot, and a measured D3 reconcile that opens a gutter and slides an overlapping legend into it — but 'Leave to Visual' only acts on large, unambiguous overlaps and makes minimal changes (these narrow gates are refined over time), while 'Smart Placement' acts on smaller overlaps and allows larger adjustments. (in 2.0)
Map Dot Size (px) 0 For maps: the radius, in pixels, of the dots drawn for places whose actual shape would be too small to see — city-states and island nations such as Singapore, Malta or Bahrain. Drawing them as dots is deliberate; the alternative is a region that has data but is invisible. How big those dots should be is a matter of taste, so this is yours to set. Blank or 0 = automatic, which scales the dot with the visual's size. Clamped to 1–24. Read live — resizing the dots restyles on the next render with no regeneration. (in 2.2)
Selection and Cross-filter
Selection Dim Opacity (%) 25 When you click a mark to cross-filter, the non-selected marks dim to this opacity (1 = nearly invisible, 100 = no dim). Applies uniformly across heatmaps, bar/scatter/line, pie/treemap/sunburst/funnel, Sankey, and D3 charts. Default 25 matches the pre-setting hardcoded values. (in 2.0)
Selected Mark Glyph None Optionally place a small high-contrast glyph at the top-right of each SELECTED mark when cross-filtering. DEFAULT OFF ('None'): most charts read fine on dimming alone, and the glyph can sit awkwardly on some mark geometries (e.g. at the outer edge of a sunburst arc, where it can be misread as belonging to a neighbour). Turn it on (Dot / Check) when you work with PALE / light-coloured marks where the dim is hard to see (e.g. an already-pale heatmap cell). Applies across D3 charts and Plotly cartesian charts (heatmap / scatter / bar / line). Automatically suppressed on flow/relationship, connected-series, and distribution-shape charts (Sankey / Chord / Arc / line / area / streamgraph / box / violin / ridgeline), where the highlight already makes the selection obvious or the mark is not a discrete point. (in 2.0)
Animation
Animation Auto-Play Off For charts that animate over time, controls whether the animation starts playing by itself when the visual loads. When disabled (default), the chart rests at its overview state until the user presses play or picks a period. When enabled, it plays through the periods once on load. Applies to any animated chart type, current or future. (in 2.0)
Animation Speed (ms per step) 1000 For charts that animate over time: how long each period stays on screen during playback, in milliseconds (lower = faster). Clamped to 250–5000; default 1000. Applies to any animated chart type, current or future. (in 2.0)
Animation Restart Delay (sec) 3 For charts that animate over time: how long playback rests after a play-through before playing again, in seconds ('Rest at Last Period' picks WHERE it rests — the overview or the final period). Default 3. Set 0 to restart immediately, or a very large value (e.g. 1000000) to effectively play only once per viewing. Pausing or clicking a specific period stops playback. Applies to any animated chart type, current or future. (in 2.1)
Rest at Last Period Off For charts that animate over time: where playback rests between play-throughs, and where the chart starts on load. When enabled, a play-through parks on the FINAL period (and the chart defaults to that last period on load); when disabled (default), it returns to the 'All periods' overview and clears any period filter (and the chart loads on the overview). Playback always restarts after the 'Animation Restart Delay' — pausing or clicking a specific period is what stops it. (With 'Filters During Play' also on, the resting period's filter is applied as the report state.) Applies to any animated chart type, current or future. (in 2.0)
Max Ideal Frames 60 For charts that animate over time: the target maximum number of keyframes to walk. The animation summarizes dates to the finest calendar grain (decade/year/quarter/month/week/day) that stays at or under this value (and as close to it as the grains allow) — e.g. 15 years of daily data at 60 becomes ~quarterly. Rows within each period are combined with the chosen aggregation. Re-grains live (no regeneration). Clamped to 3–500; default 60. Applies to any animated chart type. (in 2.1)
Timeline Style Auto For charts that animate over time, how the period scrubber is drawn. 'Line' shows a continuous horizontal timeline with a moving vertical tick — best when there are MANY periods (e.g. a choropleth over 100+ years, where the colours change in place). 'Boxes' shows one selectable box/dot per period — best for a handful of periods. 'Auto' (default) picks a line when there are many periods, boxes when there are few. Applies to any animated chart type, current or future. (in 2.1)
Filters During Play Off For charts that animate over time (e.g. an animated treemap), controls whether the report cross-filter tracks the animation. When disabled (default), the report cross-filter changes only when you CLICK a mark or a timeline period — playback never shifts the other visuals around. When enabled, the shown period drives the report filter frame by frame during playback (including from a standing start — plain auto-play filters each period as it plays). If 'Play Ends at Last Period' is ALSO enabled, the chart loads with the LAST period's filter already applied as the default report state. Applies to any animated chart type, current or future. (in 2.0)
Card Deck & Carousel
Card Flip Controls Both For card decks that page through several faces (the flippable multi-card): where the flip controls live. "Both" (the default) gives every card its own arrows AND keeps one set at the bottom for the whole deck — flip one card to compare it against the rest, or flip them all to keep them lined up. "Flip All" is the deck strip only, so every card always shows the same face. "Flip Single" is per-card only. This one is for the deck only: the rotating carousel ignores it, since it has its own arrows and its neighboring faces peek beside the front one. Ignored entirely by every other chart type. (in 2.2)
Card Flip Direction Side to side For charts that turn between faces (the flippable multi-card and the rotating carousel): which way a face turns. "Side to side" (the default) narrows the card to a line and opens it again, as every deck always has, and turns a carousel's ring left and right with its neighbors peeking at each side. "Top to bottom" flattens the card and opens it again, and turns a carousel's ring up and down with its neighbors peeking above and below. Only the turn changes - the faces, the controls and the auto-advance are the same either way. A deck generated before this setting existed does not read it. Ignored entirely by every other chart type. (in 2.6)
Card Background Color For card decks (the flippable multi-card) and the rotating carousel: the fill behind each card or face. Blank (the default) lets the chart pick — a deck normally uses the visual's own background so its cards read as part of the canvas, and a carousel gives its faces a subtle tint so each reads as a surface. Set a color to make the cards read as distinct surfaces. The chart keeps deciding its TEXT colors, so a dark card still gets legible labels. Ignored entirely by every other chart type. (in 2.2)
Card Flip Interval (ms) 0 For card decks that page through several faces (the flippable multi-card): how long each face stays on screen before the deck advances by itself, in milliseconds. 0 (the default) means MANUAL ONLY — the deck never advances on its own and the reader uses the arrows or dots. Any other value starts a timer, clamped to 500–120000 so a stray small number cannot strobe. Interacting with the deck stops the timer, and a reader who has stopped it stays stopped. The rotating carousel reads it too, with one difference: left untouched, a carousel turns by itself every 5 seconds; set 0 to make it manual. Ignored entirely by every other chart type. (in 2.2)
Rows
Rows Per Page 0 For charts whose rows are a LIST the reader scrolls rather than a set of marks competing for one tile - the Gantt chart and the tabular-with-embedded: how many rows to show at a time, with a pager. 0 (the default) or blank means NO PAGING - every row is drawn and a body taller than the tile simply scrolls, which is how these charts have always behaved. A value of 1 or more pages the body instead; fractions and anything unparseable are read as 0. Ignored entirely by every other chart type. (in 2.4)
3D Charts
Hover Drop Lines Automatic For the 3D scatter plot: hovering a point draws a dashed line from it to each back wall of the cube, so its three values read off the gridlines there. The lines follow the cube when you turn or zoom it, and clear when you move off the point. "Automatic" (the default) leaves it to the chart: off, unless the request that made the chart asked for drop lines. "On" and "Off" override that either way, with no regeneration. Shown only when the chart on screen supports it. (in 2.6)
Summary Panel
Summary Position Bottom Controls whether and where the summary panel appears. It describes the chosen visualization (chart type, derived measures) and exposes action buttons. Default is 'Bottom'; how long it stays visible is set by 'Hide Summary After (In Edit / In View)'.
Hide Summary After (In Edit) 30 The summary area will be hidden after this number of seconds, when in edit mode. It opens on its own ONLY when you generate a chart - including a modify - and a generation that carries a message you need to see keeps it up until you close it rather than hiding it on this timer. Nothing else opens it: not a data refresh, a cross-filter, a resize, switching pages and back, or reopening the report, even when the last generation left a message behind. 0 = it never opens on its own at all, but clicking the chart still opens it (see 'Click Shows Summary').
Hide Summary After (In View) 0 The summary area will be hidden after this number of seconds, when in reading mode. It opens on its own ONLY when you generate a chart - including a modify - and a generation that carries a message you need to see keeps it up until you close it rather than hiding it on this timer. Nothing else opens it: not a data refresh, a cross-filter, a resize, switching pages and back, or reopening the report, even when the last generation left a message behind. 0 (the default here) = it never opens on its own at all, but clicking the chart still opens it (see 'Click Shows Summary').
Summary Text Font The font family for the summary text.
Summary Text Size The size of the summary text.
Show Credits Remaining (in Reading view too) Off Licensed visuals always show the approximate credit balance in the hover panel when the report is open in Edit view. Turn this on to ALSO show the balance in Reading view (default off, since Reading view is what report consumers see and you may not want to expose Account-level credit balance there). Low-credit warnings fire in both views regardless of this setting.
Hide Some Warnings and Prices Off When enabled, some types of warning messages will not be shown. Also, the credit balance will not be shown in tool tips, and the price list / secret key entry will not be shown in the summary box.
While Loading
Spinner Type Circles Lets you pick a spinner style, while the visual is processing data.
Please Wait Message Please Wait You can change the message shown when the visual is processing data. (A blank value will show no message.)
Language
Auto-Localize Visual Text On When enabled (default), the visual translates its built-in messages to the host language. Turn off to keep messages in English regardless of the browser/host locale. (in 2.0)
Language Code This setting can by used to override the browser language setting. This can influence localization of generated output. This should be the first 2 characters of a standard BCP 47 language code.

Colors
Field Default Description
Visual Background
Background Color The background color for the visual's whitespace areas. (Blank = transparent)
Background Opacity 0 The opacity (percentage) for the background color. (Zero is fully transparent.)
Summary Panel
Summary Background Color The background color for the summary panel.
Summary Opacity 85 The opacity (percentage) for the summary panel. (Zero is fully transparent.)
Continuous Color Scale
Color Scale (Low) Force the LOW end of any continuous color scale (colormap/colorbar) the chart draws — heatmaps, choropleth maps, density plots, continuous bubble color, etc. Blank = automatic, and the picker shows the color in force: a light tint of the report palette's first color, spaced so neighbouring shades stay distinguishable as drawn. Applies with 'Color Scale (High)'; D3 charts are written to read both at render time, so they restyle with no regeneration - a chart generated before that was asked for keeps its original ramp until the next Generate, as Python-drawn charts always do. (in 2.1)
Color Scale (High) Force the HIGH end of any continuous color scale (colormap/colorbar) the chart draws. Blank = automatic, and the picker shows the color in force: the report palette's first color, darkened when it is too light to carry a ramp. Applies with 'Color Scale (Low)'; D3 charts are written to read both at render time, so they restyle with no regeneration - a chart generated before that was asked for keeps its original ramp until the next Generate, as Python-drawn charts always do. (in 2.1)
Color Scale Scope All periods For charts that animate over time: what the continuous color scale shows. 'All periods' (default) computes ONE scale over every period so a color means the same value in every frame — the honest view of growth (early periods legitimately read pale). 'Current period' re-scales each frame to that period's own min–max so you see the full color range WITHIN every frame (the colorbar redraws per frame and is labeled accordingly). 'Change vs. own average' switches what's encoded from magnitude to movement: each region's color shows its % deviation from ITS OWN average across all periods (diverging scale; a small region's big swing reads as strongly as a large region's) — outliers are clamped per 'Color Scale Self-Clamp Percentile' below, and the 'All periods' state falls back to the standard magnitude view since every region trivially equals its own average there. D3 charts restyle on the next render without a regeneration. Applies to any animated chart with a continuous color scale, current or future. (in 2.1)
Color Scale Self-Clamp Percentile 95 Only applies when 'Color Scale Scope' is 'Change vs. own average'. The diverging scale's outer edge is set to this percentile of |% change| across all regions/periods (not the raw maximum), so one outlier region doesn't wash out everyone else's contrast to near-nothing. Lower = more contrast among typical regions but more outliers pinned to full saturation; higher = more headroom but a flatter map. Default 95. (in 2.1)
Maps
Map Land Color For maps: the fill for LAND — the base colour of the map's landmasses. On a choropleth this is what you see wherever the data doesn't reach; on a point/bubble map it's the whole basemap under the marks. Blank = automatic (a light grey). In high-contrast mode the system's background colour is used instead and this setting is ignored, as high-contrast forced colours are a requirement rather than a preference. (in 2.1)
Map No-Data Color For choropleths: the fill for regions that ARE part of your data's geography but have no value for what's currently shown (e.g. a country with no rows in the selected period). Blank = use 'Map Land Color', so no-data regions are indistinguishable from plain land unless you deliberately set them apart. Set a distinct colour when 'we have no number here' is a finding in its own right rather than just background. Ignored in high-contrast mode. (in 2.1)
Chart Palette
Use Generated Palette On When enabled, a palette will be auto-generated from the current report theme.
Color 1 Color #1 of an optional palette suggested to the engine. Fill in colors in order and leave the rest blank. Used when 'Use Generated Palette' is off (or as the seed colors it builds from); leave all blank to follow the report theme.
Color 2 Color #2 in a user-defined suggested palette.
Color 3 Color #3 in a user-defined suggested palette.
Color 4 Color #4 in a user-defined suggested palette.
Color 5 Color #5 in a user-defined suggested palette.
Color 6 Color #6 in a user-defined suggested palette.
Color 7 Color #7 in a user-defined suggested palette.
Color 8 Color #8 in a user-defined suggested palette.
Color 9 Color #9 in a user-defined suggested palette.
Color 10 Color #10 in a user-defined suggested palette.
Color 11 Color #11 in a user-defined suggested palette.
Color 12 Color #12 in a user-defined suggested palette.
Color 13 Color #13 in a user-defined suggested palette.
Color 14 Color #14 in a user-defined suggested palette.
Color 15 Color #15 in a user-defined suggested palette.
Color 16 Color #16 in a user-defined suggested palette.
Color 17 Color #17 in a user-defined suggested palette.
Color 18 Color #18 in a user-defined suggested palette.
Color 19 Color #19 in a user-defined suggested palette.
Color 20 Color #20 in a user-defined suggested palette.

Vega and Vega-lite
Field Default Description
Vega Type N/A Determines whether the visual tries to use Vega or Vega-lite explicitly, or N/A leaves the choice to the visual. (in 2.0)
Render Mode N/A Controls whether Vega/Vega-lite renderings are done with SVG or Canvas. SVG is good for most cases but can become slow for a large number of data points. N/A leaves the choice to the visual. (in 2.0)
User Config You can optionally provide Vega/Vega-lite config JSON that gets used to provide styling. I.e. you can copy-and-paste your config across multiple instances of the visual to provide consistent styling. This would be the same JSON you could find in Deneb's Config. (in 2.0)

Other Resources / Links:

AppSource Purchase Guide

Learn more about purchasing one or more user licenses from Microsoft AppSource.
This application may no longer respond until reloaded. Reload 🗙