Chart states and rendering rules
Every visual on a DataPrism report page passes through the same states: loading, drawn, empty, failed or cut short by a limit. This page explains what you see in each state, what the messages mean, and what to do about them.
What a visual shows while it loads
- While a tile waits for its data it draws a skeleton of its own shape, with a moving sweep. The sweep stops when your device asks for reduced motion, and screen readers announce Loading chart.
- The overlay follows the tile's size: a very small tile keeps only an icon, a larger one adds a chip, and a full tile adds a caption under it.
- While an aggregation is being built or restored, the tile can read Running aggregation..., Loading chart data... or Restoring aggregation result....
When a visual is empty or fails
- A visual that has not run yet can ask to be run: Click Execute to generate chart. A visual with no fields to plot shows Configure chart fields, with a hint that counts what it has, such as 3 group by fields, 2 value fields.
- When the fields are set but the result has no rows, the visual still draws its frame with nothing to plot. Check the report and visual filters first; see Filters, slicers and interactions.
- A run that fails shows Aggregation failed. Where the tile offers Show details, select it to read the reason. Problems you can fix yourself arrive as a sentence that starts with invalid chart configuration: and names the fix.
- Some refusals cannot be fixed from the tile: a privilege rejection shows as one quiet line, without the usual error styling and without a details action.
- An empty pivot-style layout asks for fields: Drag fields to create a pivot table or Drop fields into Rows, Columns, or Values to begin.
- A visual that is missing part of its setup shows Incomplete chart configuration; the line under it names the fields its type needs.
When a visual keeps an earlier result
If a refresh fails, the tile does not blank out. It keeps its last good result and pins the badge Showing earlier result - refresh failed over it, so old numbers are never mistaken for current ones. Hover the badge to read the failure, and select it where the tile offers that; refresh the report to try again.
When data is cut short
- Every visual loads a limited amount of data, set on the visual under General > Limits; the editing rules are on Format a visual. When the result is larger, the tile draws what it has and says so.
- Too many legend values: the badge Showing first 8 of 40 series counts what is drawn, and its tooltip suggests adding a filter to narrow the field.
- A truncation badge in the footer reads Showing 1-100 of 512 or Showing 512 of 1,000. Hovering explains it, for example Chart limit reached. Showing the first 512 of 1,000 data points.
- A batched visual adds rows as you scroll: Load more, with progress such as Loaded 20,000 of 85,000 rows. When the ceiling is reached the button is replaced by Row limit reached, and Export gets the full data; see Export reports and data.
- A paged visual shows Previous page and Next page, the position such as 2/8 and a Limit label. The pager is hidden while there is only one page.
- A visual either pages or batches; a definition that mixes the two styles is refused with a message in the invalid chart configuration: family. A map uses neither style: it loads up to its own row cap, and that cap cannot be combined with paging or Compare.
How a chart query runs
- Running a visual sends its definition to the platform, and the tile waits for the run to finish before it draws.
- Two tiles that ask for exactly the same query share one run. Running the same visual again replaces its own earlier unfinished run, so an old run cannot overwrite a newer result.
- A failed run explains itself inside the tile, as described above.
- Views that are not saved yet, such as a drill view, an unsaved edit or a version preview, are validated and run exactly like the saved visual, but nothing about them is stored.
- On a model with row-level security, a viewer whose rules match no rows gets an empty result without any data being read: the visual shows its normal empty state and the report adds one information banner. See Row-level security and View as.
- The same machinery offers four actions: run; a SQL preview that builds the query and its row count without reading data, with the row-level security condition masked where the model masks it; a download as CSV, TSV or Excel, which needs the Export DataPrism Report Data permission; and filter-value loading, which starts with up to 100 options and can reach 1,000.
Rendering rules worth knowing
- Pie and Donut decide their grain from the Legend well when it has a field, and from their category fields when it does not.
- A chart shows the extra Tooltips measures on hover only when the Tooltips well has fields.
- Bar, Line and Combo charts with more than one field on the X-Axis combine them into one composite key on the axis.
- A long category label is shortened on the axis; hover it to read the full text. Value axes keep their zero baseline and can show negative values; a percent-stacked chart shows shares on its axis.
- A picture-only export of a visual leaves out its toolbar and its pager.
- Older charts keep working: a saved chart type that has no current equivalent is drawn as a bar chart.
Questions, answered
Why is my visual empty?
No rows may be a correct answer: check the page and visual filters first. If the tile asks you to run it or to add fields, do that. On a model with row-level security, your rules may match no rows, and the report shows an information banner when they do.
Why does my visual say "Aggregation failed"?
The run failed before the visual could draw. Select Show details where the tile offers it to read the reason. Fix what it names and run the visual again; if it keeps failing, see Troubleshooting.
What does "Showing earlier result - refresh failed" mean?
The latest refresh failed, so the tile kept its last good result instead of blanking out. Hover the badge to read the failure, select it where the tile offers that, and refresh the report to try again.
Why are only some legend values shown?
The legend field has more distinct values than the chart can draw. The badge counts what is drawn, and its tooltip suggests the fix: add a filter to narrow the field.
What does "Showing 1-20 of 150" in the footer mean?
The visual loads its result in pages, and this is one page of it. Use Previous page and Next page to move, or raise the page size under General > Limits. The defaults and maxima per visual type are listed on Visuals.
Why does the footer say "Row limit reached"?
The visual has loaded as many rows as its limit allows and more rows remain. Use Export to download the full result, or narrow the report filters; see Export reports and data.
Can a visual use paging and Load more at the same time?
No. A visual either loads its result in pages or accumulates rows with Load more; a definition that mixes the two is refused. Maps use neither style: they load up to their own row cap and note when rows were left out.
Why does my visual show a quiet message instead of an error panel?
Some refusals cannot be fixed from the tile, so the platform keeps them calm: a privilege rejection shows as one quiet line, without error styling and without a details action. Ask for access to the table or column, then refresh.
What does "Incomplete chart configuration" mean?
The visual has nothing to draw with: a field its type needs is missing. The line under the message names the fields to add; add them and run the visual again.
Do drill views and version previews run like saved charts?
Yes. Drills, unsaved edits and version previews are validated and run exactly like the saved visual, but nothing is stored for them: close the view and it is gone. Running the visual again replaces its own earlier unfinished run.
Why does an error say "invalid chart configuration"?
That is the platform's family of messages for problems you can fix yourself, and the sentence after the prefix names the fix, for example invalid chart configuration: chart needs at least one summarize field or measure or invalid chart configuration: limit must be at most 500 for a Pie visual (got 501). Adjust the visual and run it again.