# Makie.jl - Subplots + hover information

**URL:** <https://discourse.julialang.org/t/makie-jl-subplots-hover-information/133066>\
**Category:** Visualization\
**Tags:** plotting, makie\
**Created:** [October 11, 2025, 8:39am UTC](https://discourse.julialang.org/t/makie-jl-subplots-hover-information/133066 "2025-10-11T08:39:04Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Episki](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/episki/32/216134_2.png) [@Episki](https://discourse.julialang.org/u/Episki)\
**Post date:** [October 11, 2025, 8:39am UTC](https://discourse.julialang.org/t/makie-jl-subplots-hover-information/133066/1 "2025-10-11T08:39:04Z")

</div>

Hi all. I have a general question regarding Makie.jl, subplots and hover information.

I would like to recreate a plot with some subplots in which the hover information of ALL the data-series is shown. There would be 2 ways:

- Information on every data-series when hover 1 of the series, like this one example from Plotly-Python ([hoverinfo\_subplots](https://plotly.com/python/hover-text-and-formatting/#hover-on-subplots))

- Vertical hoverline across all subplots showing information of all the data-series in all subplots like the following image:  

Is this easy doable with Makie.jl?

Thanks!

---

<div class="post-metadata">

**Author:** ![freeman](https://avatars.discourse-cdn.com/v4/letter/f/ec9cab/32.png) [@freeman](https://discourse.julialang.org/u/freeman)\
**Post date:** [January 21, 2026, 10:46am UTC](https://discourse.julialang.org/t/makie-jl-subplots-hover-information/133066/2 "2026-01-21T10:46:29Z")

</div>

As a starting point, I found this: [Inspecting data | Makie](https://docs.makie.org/dev/explanations/inspector#Per-plot-show_data)

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [January 21, 2026, 11:40am UTC](https://discourse.julialang.org/t/makie-jl-subplots-hover-information/133066/3 "2026-01-21T11:40:18Z")

</div>

Easily doable is a stretch, but you can build something like it. This is a rough sketch

```julia
f = Figure()

ax = Axis(f[1, 1])

lins = [lines!(ax, 1:100, cumsum(randn(100)), label = "$i") for i in 1:4]

vlin = vlines!(ax, 0.0, visible = false, color = :gray80)
too = tooltip!(ax, 0.0, 0.0, "", visible = false)
translate!(too, 0, 0, 100)

function joint_hover_info(event::MouseEvent, axis)
    x, y = event.data
    if event.type == Makie.MouseEventTypes.enter
        vlin.visible = true
        too.visible = true
    elseif event.type == Makie.MouseEventTypes.over
        update!(vlin, arg1 = x)

        io = IOBuffer()
        println(io, "x: ", round(x, digits = 3))
        for lin in lins
            # TODO: this logic is very rough
            i = findfirst(_x -> _x >= x, lin.arg1[])
            i === nothing && continue
            println(io, lin.label[], ": ", round(lin.arg2[][i], digits = 3))
        end
        str = String(take!(io))

        update!(too, arg1 = x, arg2 = y, arg3 = str)
    elseif event.type == Makie.MouseEventTypes.out
        vlin.visible = false
        too.visible = false
    end
    return
end

register_interaction!(joint_hover_info, ax, :joint_hover)

f

```
