один для выполнения всей вертикали на каждом подграфике
один для сделайте всю горизонталь на каждом подграфике

вертикаль независима для каждого подграфика, потому что, если я сделаю по одному для каждой горизонтали, она может отображаться на двух подграфиках одновременно:
на подграфике у меня есть мышь
и еще один подсюжет, который соответствует тому же значению Y, на котором находится моя мышь

мой лучший результат на данный момент — это то, что у меня есть «отсутствующая» вертикаль, но они мигают, когда я перемещаю мышь с помощью этого кода:
import tkinter as tk
from matplotlib.widgets import MultiCursor
import mplfinance as mpf
import yfinance as yf
import datetime as dt
import pandas as pd
df = pd.DataFrame(yf.Ticker("^NDX").history(interval="1d", start= dt.datetime.today()-dt.timedelta(days=500), end=dt.date.today()-dt.timedelta(days=0))[["Open","High","Low","Close","Volume"]])
fig = mpf.figure(style="yahoo", figsize=(15,10))
nb_subplot = 3
for i in range(nb_subplot):
if i == 0:
axlist = [fig.add_subplot(nb_subplot,1,1)]
else:
axlist.append(fig.add_subplot(nb_subplot, 1, i+1, sharex=axlist[0]))
multicursor= []
for i in range(nb_subplot):
if i == 0:
multicursor.append(MultiCursor(fig.canvas, axlist, vertOn=True, color='black', lw=0.5, useblit=True))
#multicursor.append(Cursor(axlist, horizOn=True, vertOn=False, useblit=True))
multicursor.append(MultiCursor(fig.canvas, [axlist], horizOn=True, color='black', lw=0.5, useblit=True))
mpf.plot(df,type="candle",ax=axlist[0],volume= False)
#returnfig = True,
mpf.show()
Подробнее здесь: https://stackoverflow.com/questions/791 ... al-subplot