# \[ANN\] UpSetPlot.jl

**URL:** <https://discourse.julialang.org/t/ann-upsetplot-jl/136848>\
**Category:** Package Announcements\
**Tags:** plotting\
**Created:** [April 24, 2026, 8:34am UTC](https://discourse.julialang.org/t/ann-upsetplot-jl/136848 "2026-04-24T08:34:40Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![juliohm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juliohm/32/215266_2.png) [@juliohm](https://discourse.julialang.org/u/juliohm)\
**Post date:** [April 24, 2026, 11:13am UTC](https://discourse.julialang.org/t/ann-upsetplot-jl/136848/2 "2026-04-24T11:13:47Z")

</div>

That is a very nice plot, thanks for sharing! 🙂 :juliaheartpulse_dark:

First feature request would be to sort the rows/columns by intersection size. That is convenient as explained in the Wikipedia page. Maybe an option `sort=true` that is enabled by default?

Also, I would try to rename the functions to make them more idiomatic for Julia users, e.g., without underscores. `upsetplot` would be preferred. The function `to_dataframe` is also suspicious for those of us programming in Julia for a long time.

As a final suggestion, consider making this a Makie.jl recipe instead, so that people can use the recipe with any backend, including interactive ones (e.g., GLMakie.jl):

> **[Recipes | Makie](https://docs.makie.org/dev/explanations/recipes)**
>
> Create impressive data visualizations with Makie, the plotting ecosystem for the Julia language. Build aesthetic plots with beautiful customizable themes, control every last detail of publication quality vector graphics, assemble complex layouts and...

---

_[View the full topic](https://discourse.julialang.org/t/ann-upsetplot-jl/136848)._
