Violin Plot

Use to visualise the distribution of your data.

A violin plot is a visual that traditionally combines a box plot and a kernel density plot.

A box plot lets you see basic distribution information about your data, such as median, mean, range and quartiles but doesn’t show you how your data looks throughout its range. If you have a multimodal distribution (multiple peaks) or some confusion as to where things are clustered then it’s not easy to figure this out.

A kernel density plot helps with this challenge by showing the variations in your data across its distribution. It works like a histogram, but uses kernel smoothing to provide a smoother curve where noise might otherwise be present.

This visual provides you with the ability to make these violin plots, with the option of displaying an accompanying combo plot (either a box plot, barcode plot or column plot).

Features include:

  • Split and color by categories
  • 4 different kernels
  • Sampling resolution
  • Estimated/manual KDE bandwidth, configurable by category
  • Customizable combo plot (box, barcode or column)

Please refer to the example .pbix file, or the wiki at for more details.


What’s new in 1.3.0:


  • Revised legend
  • Additional column (min/max) combo plot
  • Option to clamp the plot to min/max values
  • Start and End values for the y-axis
  • Addition of the # Samples with Highlighted Value on the barcode combo plot default tooltip
  • Violin stroke width can be set to 0

Changes are document more fully at


What’s new in 1.2.0:


  • Added ‘show data’ hotkey (Alt + Shift + F11) accessibility support
  • Locale awareness for measures and Y-axis
  • Improved tooltip functionality, including report page tooltips and recently introduced tooltip formatting changes
  • Bug fixes

More detailed release notes can be viewed at


What’s new in 1.1.0:


  • Added barcode plot as an alternative to box plot
  • KDE bandwidth can be applied by category, rather than uniformly
  • Minor bug fixes

Add-in capabilities

When this add-in is used, it

  • Can read and make changes to your document
  • Can send data over the Internet

***** Related Blog Posts *****
Creating Multi Threaded Dynamic Visuals – Advanced Power BI Technique
Custom Dynamic Segmentation Using DAX In Power BI

***** Related Video Tutorials *****
Create Dynamic Visuals Based On Ranking in Power BI w/DAX

Outlier Detection & Visualization in Power BI – Advanced DAX
How To Use Virtual Tables With COUNTROWS in Power BI – DAX Formula Technique
RANKX Considerations – Power BI & DAX Formula Concepts
Manufacturing Operations – Power BI Showcase

Center of Excellence

***** Related Course Modules *****
Ultimate Beginners Guide to Power BI
Power BI Super Users Workshop
Solving Analytical Scenarios w/ Power BI & DAX
Advanced Analytics in Power BI
Financial Reporting w/ Power BI
Power BI Showcases

***** Related Support Forum Posts*****
Custom Visual AppStore
Custom Visuals vs Standard Visuals
Power BI – Creativity