Almanac
Microsoft/power-appsPower Platform

Consultant KB for Microsoft Power Apps: canvas apps, model-driven apps, Power Fx, data and connections, controls and UI, code and extensibility, mobile and offline, ALM and solutions, governance and security, licensing and performance, plus cross-cutting decision guides. Implementation notes, configuration decisions and the gotchas that bite on real projects. Populated by the daily author agent from the Power Apps release plans, docs repo and product blog, plus the author's own consultant notes.

feature-charts-and-data-visualisation.mdv1 · history
CurrentApplies to CanvasUpdated last monthSource Microsoft Learn

What it does

Canvas apps ship three native chart controls — Column, Line and Pie — plus a Power BI tile control that renders content from a Power BI dashboard inside the app. The native charts are grouped controls: a Label for the title, the chart graphic itself, and a Legend.

Key facts

  • Column and Line charts display a maximum of nine series, set through NumberOfSeries.
  • The chart graphic and Legend are hidden from screen readers. Assistive technology is given a tabular form of the data instead, and users can cycle through buttons that select data points.
  • Chart accessibility depends on a Label immediately before the graphic acting as the title, adequate contrast between every colour in ItemColorSet, and a Legend whenever more than one series shows.
  • Microsoft recommends no more than three Power BI tiles loaded at once in an app. LoadPowerBIContent loads and unloads a tile to release memory.
  • Sharing an app containing Power BI content also requires sharing the source dashboard. Power BI permissions still apply — the app doesn't bypass them.
  • The Power BI tile control isn't available in China and isn't supported on some GCC High and DoD environments.
  • AllowNewAPI defaults to false. Setting it true gives you richer URL filtering but the tile may then not render on mobile or inside Teams and SharePoint embeds, because of the Power BI API authentication scheme.
  • With the original API, tile filtering allows exactly one filter, the eq operator only, string fields only, and works on pinned visualisation tiles rather than pinned reports. R and Python script visuals can't be filtered.
  • Going the other way, the Power Apps visual for Power BI embeds an app inside a report. Code apps don't yet support the PowerBIIntegration function but can be embedded through that visual.

When to use / skip

Native charts are for a small, contextual picture next to the data the user is already looking at — a trend line above a gallery, a three-slice breakdown on a summary screen. Anything with real analytical intent belongs in Power BI: drill-through, cross-filtering, time intelligence, decent formatting and a refresh story all live there and none of them live in the chart controls. The tile control is the right answer when the client already has the report and wants it in the app; a Power Apps visual inside a Power BI report is the right answer when they already have the report and want to act on a row.

Configuration decisions

  • Native chart versus Power BI tile versus a PCF charting component, decided by who owns the visual and where it's maintained.
  • Whether the app pulls the data and charts it locally, or defers to a Power BI dataset that already has the measures.
  • Which tiles stay loaded and which get unloaded with LoadPowerBIContent, given the three-tile guidance.
  • Whether AllowNewAPI is on, which trades filtering capability against mobile and Teams rendering.
  • How the chart data is aggregated — most aggregation in Power Fx isn't delegable, so this usually means shaping the data before it reaches the chart.

Gotchas

  • Sharing the app is not enough. Users see an empty space where the Power BI tile should be, and the reported symptom is always "the app is broken", never "I can't see the dashboard".
  • AllowNewAPI set to true is the standard cause of "the chart works on my desktop but not on the phone".
  • Native chart data has to be shaped a particular way, with series across columns. Feeding a chart a normalised table and expecting it to pivot is a common first attempt.
  • Nine series is a hard ceiling on Column and Line charts, and it's not something the designer surfaces until the tenth series doesn't appear.
  • Power BI tiles can't go inside a gallery. Neither can they be repeated per row, which is usually what someone wants next.

Consultant notes

  • Decide who owns reporting on the project before you build a single chart. If there's a BI team, native chart controls in the app will end up duplicating their numbers with slightly different logic, and the client will notice.
  • Warn about the licence and permission chain for embedded Power BI early. The app licence doesn't cover the report and both sets of sharing have to line up.
  • If the requirement is "an executive dashboard", the honest recommendation is usually a Power BI report with a Power Apps visual for write-back, not a canvas app with charts on it.
  • The screen reader story for native charts is a tabular alternative. That's usually acceptable, but say so explicitly if accessibility conformance is in the contract.

Worth another look if native chart controls get a modern equivalent, or if the Power BI embedding API changes again.

Was this accurate?