Есть ли способ указать текст, отображаемый во всплывающей подсказке? - PullRequest
0 голосов
/ 20 апреля 2019

enter image description here Я хочу иметь возможность указать, что отображается во всплывающей подсказке, по умолчанию это показывает x и y, но есть ли способ, которым я могу изменить это на то, что я хочу:

import matplotlib.pyplot as plt
import numpy as np
from mpldatacursor import datacursor

x1, y1 = np.random.random((2, 5))
x2, y2 = np.random.random((2, 5))

fig, ax = plt.subplots()
ax.plot(x1, y1, 'ro')
ax.plot(x2, y2, 'bo')

datacursor()
plt.show()

Ответы [ 2 ]

0 голосов
/ 20 апреля 2019

Если вы хотите, например, переименовать x и y в foo и bar, вы можете использовать

datacursor(formatter="foo: {x:06.4f}\nbar: {y:06.4f}".format)

enter image description here

0 голосов
/ 20 апреля 2019

Функция datacursor принимает аргумент formatter, который позволяет указать формат метки.Метка для каждого графика может быть сначала указана, а затем отформатирована (обработана) в источнике данных.В приведенном ниже примере кода во всплывающей подсказке будет отображаться текст x1,y1(or x2,y2) values при каждом щелчке курсора по соответствующим точкам координат.

ax.plot(x1, y1, 'ro', label='x1, y1 values')
ax.plot(x2, y2, 'bo', label='x2, y2 values')

datacursor(formatter='{label}'.format)

enter image description here

...