Visuals/Pl. XXII

    Beeswarm

    Every observation on the chart, packed without overlaps

    Beeswarm, jitter and strip plots for Power BI that keep each point's identity and add the median, mean or box on top. Premium tests whether the groups really differ.

    Datasheet
    Status
    Available on Microsoft Marketplace
    Price
    $1.99 /user/mo · $19 /user/yr
    Licensing
    Per user, assigned in the Microsoft 365 admin center. Unlicensed viewers see the free tier, never a blocked visual.
    Data
    Computed inside Power BI. No external calls, no API keys, no telemetry.
    Visuals API
    5.11
    Accessibility
    One-tab-stop keyboard navigation, screen-reader announcements, high contrast
    Languages
    English, Czech
    Works in
    Power BI Desktop, Service, Embedded
    Beeswarm plot in Power BI with every observation packed per group and a median on top
    Pl. XXII  ·  Beeswarm  ·  Every observation, packed without overlaps, with the summary on top, free.rendered from the shipped visual
    What it does

    SmartVisuals Beeswarm puts every observation on the chart as its own point, packed so that none overlap, and keeps its identity: hover for the ID and value, click to filter the report to that record. A median bar, a mean marker or a slim box sits on top, with quartiles that match Excel / DAX by default, and cross-highlighting keeps the whole distribution visible as a ghost.

    Premium adds the step after looking: significance between groups as letters or brackets, mean confidence intervals, weights, spec limits with capability indices and small multiples, for $1.99 per user per month or $19 per year with the first month free. Premium previews free in edit mode, readers without a licence always see the free chart, and every statistic runs inside Power BI; the visual makes no external calls.

    Search all visuals

    Free and premium

    Where the line is, exactly.

    Report authors see the full premium set in edit mode, so you can evaluate every feature on your own data before assigning a single licence. Unlicensed viewers always get a working chart.

    Free tierevery viewer
    • Three point layoutsPacked beeswarm, random jitter and strip, deterministic so the same data always draws the same picture.
    • Each point is a recordHover for its ID, value and extra tooltip fields; click to filter the report to it (groups of up to 2,500 points).
    • Summary on topMedian bar and mean marker, or a slim box with any whisker rule and quartile definition (Excel / DAX by default).
    • Reference linesMean, median and up to four percentiles, for all data or per group.
    • Cross-highlighting with contextHighlighted points drawn in full while the rest of the swarm stays as a ghost; Split By, sorting, minimum group size and horizontal layout.
    • Large data, caption and four themesUp to 150,000 rows or a value column plus Count, a smart caption, a methods footnote and four themes: SmartVisuals, Dark, Clean and Slate.
    • Native Power BI behaviourCross-filtering, tooltips, keyboard navigation, high-contrast mode and two languages (English, Czech).
    Premium$1.99 /user/mo · first month free
    • Significance between groupsWelch t or Mann-Whitney U, Holm or Bonferroni adjustment, Welch's ANOVA, ANOVA or Kruskal-Wallis, shown as letters or brackets.
    • Mean confidence intervalsA confidence interval around each group's mean, drawn over the points.
    • WeightsWeighted means and quartiles with an effective base, so weighted data is summarised correctly.
    • Spec limits and capabilitySpec limits typed or from LSL, USL and Target measures, with Cp, Cpk, Cpl, Cpu, Cpm, Pp and Ppk per group.
    • Small multiplesOne panel per plant, product or region on a shared scale, from a single field.

    How do I make a beeswarm plot in Power BI?

    Map a category such as line, shift or team to Group, a row-level key such as a unit, order or employee ID to Sample / ID and a measure to Value. Every observation becomes one point, packed beside its neighbours so no two points overlap, and the shape of each group appears from the points themselves. No pre-aggregation and no DAX: the layout is computed inside the visual in every filter state.

    Three layouts come from the same fields: a packed beeswarm, a random jitter and a plain strip plot. All three are deterministic, so the same data always lands in the same place and the picture never shimmers between refreshes.

    Why plot every observation instead of an average?

    An average hides how many observations stand behind it and how they spread. A beeswarm shows both at a glance: a group of eight looks like eight points, a cluster of slow units stands out as a cluster, and a single extreme value is visibly one point rather than a stretched whisker.

    Each point is a record. Hover it for its ID, its value and any extra tooltip fields; click it to filter the rest of the report to that record. (In a group of more than 2,500 points, the points are drawn as one image and the group carries the tooltip and the click instead.) That turns the chart from a summary into a way to find the unit, order or person behind an outlier.

    Can I show the median and quartiles on top of the points?

    Yes. Draw a median bar and a mean marker over each group, or a slim box with any whisker rule: 1.5 x IQR with an adjustable multiple, percentiles, mean plus or minus k standard deviations, or minimum to maximum. Quartiles default to Excel / DAX inclusive, the numbers PERCENTILE.INC returns in your model, with Excel / DAX exclusive, Tukey's hinges and all nine Hyndman-Fan definitions available.

    Reference lines for the mean, the median and up to four percentiles can be drawn for all data or per group, and they use the chart's own quartile definition, so a P25 line always agrees with the box.

    Cross-highlighting that keeps the context

    When another visual on the page highlights a subset, the selected points are drawn in full and the rest of the swarm stays visible as a ghost. The reader sees where the selected records sit inside the whole distribution instead of watching the chart collapse to a few points.

    Split By divides each group by a second field, sorting and a minimum group size keep the chart readable, and a horizontal layout fits long group names. A smart caption and a methods footnote state what the chart shows and how it was computed.

    Is Line C really slower? Testing the difference

    Premium answers the question a beeswarm raises. Pairwise tests compare groups with Welch's t-test or the Mann-Whitney U test, adjusted across the pairs shown by Holm or Bonferroni, and an overall test runs Welch's ANOVA, one-way ANOVA or Kruskal-Wallis. Results appear as letters or as brackets with stars, and too many brackets to read switch to letters automatically.

    Premium also adds mean confidence intervals, weights, spec limits typed or from measures with Cp, Cpk, Cpl, Cpu, Cpm, Pp and Ppk, and small multiples. Every premium feature previews free in edit mode; readers without a licence always see the free chart, never a blocked visual or a watermark.

    How many points can a beeswarm handle?

    Power BI sends up to 30,000 rows per window; the visual fetches further windows up to 150,000 rows and raises the host's warning icon if the data reached that cap. For a large table, map the value as a column together with a Count measure: each distinct value is sent once and expanded inside the visual, so medians, quartiles and tests are identical to row input.

    Use cases

    Where Beeswarm earns its place.

    Resolution times per support team

    A service manager maps Team to Group, the ticket ID to Sample / ID and hours to resolve to Value. Every ticket is a point, packed so none overlap, with a median bar and a mean diamond on top. The slow tickets stand out as points far from the rest; hovering one shows its ticket ID and clicking it filters the rest of the report to that ticket.

    Lab results by shift with cross-highlighting

    A plant laboratory maps Shift to Group, the sample number to Sample / ID and the measured value to Value. When a bar chart on the same page highlights one product, the highlighted samples are drawn in full and the rest of the swarm stays visible as a ghost, so the reader sees where that product sits in each shift's distribution.

    Survey scores by department

    HR maps Department to Group, the respondent ID to Sample / ID and the engagement score to Value, with Points > Point Layout > Strip (one line) for a compact dot strip. Layout > Hide Groups With Fewer Than keeps departments with too few answers off the chart, and the smart caption names the group with the highest median.

    Is Line C really slower?

    With the licence, Compare Groups tests the differences between groups with Welch's t-test or the Mann-Whitney U test, adjusted by Holm or Bonferroni, plus an overall test, and shows the result as letters or brackets with stars. Confidence Intervals adds a mean confidence interval drawn over each swarm.

    Getting started

    From empty canvas to first chart.

    1. 01

      Map a category to Group, a row-level key to Sample / ID and a measure to Value. Every observation becomes a point.

    2. 02

      Pick beeswarm, jitter or strip in the format pane, and a median bar, mean marker or slim box on top.

    3. 03

      Add mean, median or percentile reference lines, and a field to Split By to divide each group.

    4. 04

      Add extra measures to Tooltips; for large data, map the value as a column with a Count measure instead.

    Get Beeswarm

    Two ways in.

    Installation instructions for both paths are on the download page.

    Microsoft Marketplace (recommended)

    Reviewed by Microsoft, updates automatically, licences assigned in the Microsoft 365 admin center.

    Open Microsoft Marketplace

    Direct download (1.0.0.0)

    .pbiviz package, import into Power BI Desktop or Service, does not auto-update. Includes the full free tier; premium features preview in edit mode and are licensed through Microsoft Marketplace.

    Download .pbiviz
    Accessibility

    Readable and usable for everyone.

    Tab
    Moves into the chart. The whole chart is one tab stop, and the first group takes the focus.
    Arrow keys
    Right or Down moves to the next group, Left or Up to the previous one. With Split By, each part of a group is a stop of its own.
    Home / End
    Jumps to the first or the last group.
    Page Up / Page Down
    Moves ten groups back or forward.
    Enter or Space
    Filters the report to the focused group. Hold Ctrl to add it to the selection.
    Esc
    Clears the selection.
    • Screen readers

      The chart is labelled with its smart caption. As the arrow keys move, a polite announcement reads the focused group with its median, quartiles and number of observations, for example "Line C: median 41.20, quartiles 37.90 to 45.60, n 64". This announcement is in English in every report language for now. Individual points are not reached by the keyboard; hover or click them with a mouse or touch.

    • Visible focus and summary marks

      The focused group gets a dashed focus ring. The median bar, the mean diamond and the optional slim box are drawn over the points, so the centre of each group does not depend on colour.

    • High contrast

      In Windows high contrast mode every point is drawn hollow in the contrast theme's foreground colour, boxes become outlines and fills are dropped.

    • Context menu

      Right-clicking a group, or a point in a group of up to 2,500 points, opens the Power BI context menu for it; right-clicking elsewhere opens it for the visual.

    • Languages

      The format pane, notes, caption and footnote are available in English and Czech.

    Release notes

    What changed, and when.

    Updates install automatically from Microsoft Marketplace. Full history.

    1. 1.0.0.0

      First release on Microsoft Marketplace.

      • Beeswarm, jitter and strip layouts with a median bar, mean marker or slim box on top, and cross-highlighting that keeps the rest as a ghost.
      • Significance between groups, mean confidence intervals, weights, spec limits with capability indices and small multiples (premium).
    Questions

    Asked before you did.

    More questions? See support or write to hello@smartvisuals.io.

    A strip plot puts every point on one line per group, a jitter spreads them randomly sideways, and a beeswarm packs them so no two overlap. All three are deterministic here, so the same data always draws the same picture.

    Never. Unlicensed viewers always see the full free chart, and the footnote names any premium feature not shown. The visual never blocks a report and never shows a watermark. Every premium feature previews free in edit mode.

    Premium is a per-user licence through Microsoft Marketplace at $1.99 per user per month or $19 per user per year, with the first month free.

    Beeswarm is the single-view edition for point plots and is complete on its own. SmartVisuals Distribution, the multi-view edition at $4.49 per user per month, adds box plot, violin, raincloud, ridgeline and histogram views over the same fields with the same premium layer. Licences do not carry across offers: for point plots alone Beeswarm is cheaper, with three or more chart types the multi-view is.

    No. The visual requests no privileges and makes no external calls; every statistic is computed offline inside your report.

    Group (line, shift, team), Sample / ID (a row-level key such as a unit, order or employee ID) and a Value measure. Without Sample / ID, Power BI sums the values per group and you get one point per group. Split By divides each group by a second field, Tooltips takes extra measures, and Weight, Small Multiples and the spec-limit fields are premium.

    Power BI sends 30,000 rows per data window and the visual fetches further windows up to 150,000 rows, with a warning icon when it reaches that cap. For larger tables, map the value as a column with a Count measure. In a group of more than 2,500 points, the points are drawn as one image without per-point tooltips or selection, and above 6,000 an even sample of them is drawn; medians, quartiles and tests always use all the data.

    No separate markers: every observation is drawn as a point, so an extreme value is visible as a point far from its group. For outlier markers by rule, use SmartVisuals Box Plot, or turn on Box > Show Box for a slim box with whiskers on top of the points.

    Yes. The chart is one tab stop labelled with its smart caption: the arrow keys move between groups, Home and End jump to the ends, Page Up and Page Down move by ten, Enter or Space filters the report (Ctrl adds) and Esc clears. A polite announcement reads each group's median, quartiles and n, in English for now. Individual points are reached with the mouse or touch, not the keyboard. Windows high contrast draws every point hollow in the system colour.

    English and Czech, for the format pane, the caption, the footnote and the notes.

    Yes. In the Power BI Service, licensed readers see the premium features and others see the free chart. Where Power BI tells the visual that licences cannot be checked, for example in Power BI Embedded, Publish to web or Power BI Report Server, the premium features stay on rather than lock anyone out.

    Post it on the public board at smartvisuals.io/feedback, where other users can vote and comment, or use the Report a bug block on the support page (smartvisuals.io/support) or email hello@smartvisuals.io. A screenshot and the fields you mapped help most.
    Troubleshooting

    When it does not look right.

    Found a bug or missing something? Post it on the requests board or vote for what others asked; the developer answers within two business days.

    Each group shows a single point.
    Without Sample / ID, Power BI sums the values per group and the visual receives one number per group; it shows a hint saying so. Map a row-level key, such as a unit, order or employee ID, to Sample / ID, or put the value itself in Value (as column) with a Count measure.
    Points show no tooltip and cannot be clicked.
    When a group has more than 2,500 points, its points are drawn as one image to stay fast, without per-point tooltips or selection. The group keeps its tooltip with the median, quartiles and n, and clicking it still filters the report. Above 6,000 points per group an even sample of the points is drawn, while every statistic still uses all the data.
    Outliers are not marked.
    In a beeswarm every observation is drawn as a point, so extreme values are visible as points far from the rest; the Beeswarm does not draw separate outlier markers. Box > Show Box adds a slim box with the whisker rule from Statistics > Whiskers on top of the points.
    A warning says "Showing part of the data".
    Power BI sends 30,000 rows per data window and the visual fetches further windows up to 150,000 rows. Above that, the chart and its statistics use the rows received and the warning says so. Put the value in Value (as column) with a Count measure so each distinct value arrives once, or filter the page.
    The swarm is too wide or the points crowd into each other.
    Lower Points > Point Size, raise Layout > Space Between Groups (%) or switch Points > Point Layout to Random jitter or Strip (one line). A horizontal orientation (Layout > Orientation) gives long swarms more room.
    Letters, brackets, confidence intervals or small multiples disappear in reading view.
    These are premium. They render in full while you edit; readers without a licence see the free chart and a footnote line naming the premium features not shown. Assign the reader a licence in the Microsoft 365 admin center under Billing > Licenses.
    For developers & AI agents

    Add this visual programmatically.

    Use the GUID and data roles below to add Beeswarm to a Power BI report via PBIR or the Report Authoring agent. Full catalog (JSON)

    Visual GUID
    smartvisualsBeeswarmE6F7689BBD06F47F8BD30600527E7200
    RoleDisplay nameKind
    groupGroupGrouping
    seriesSplit ByGrouping
    detailSample / IDGrouping
    valueValueMeasure
    valueColumnValue (as column)Grouping
    countCountMeasure
    weightWeightMeasure
    facetSmall MultiplesGrouping
    tooltipsTooltipsMeasure
    lslLower Spec Limit (LSL)Measure
    uslUpper Spec Limit (USL)Measure
    targetSpec TargetMeasure
    Missing something?

    Tell us what is missing.

    A feature you need, a bug you hit, a visual that does not exist yet. Every message reaches the person who builds these visuals, and feature requests shape what ships next. We also build visuals to order.

    Also in the family