Из вашего вопроса не ясно, что вы имеете в виду под картированием. Если вы хотите изменить маркеры легенды с маркеров по умолчанию на маркеры пользовательских переменных, вы можете сделать следующее. Мое решение было основано на этом ответе, но было упрощено, чтобы представить простой пример. Не забудьте высказать оригинальный ответ. Я уже сделал в качестве подтверждения.
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.lines import Line2D
fig, ax = plt.subplots()
new_legends = ["X", "Y"]
markers = ['s', 'o']
colors = ['r', 'b']
x = np.arange(5)
plt.plot(x, 1.5*x, marker=markers[0], color=colors[0], label='squares')
plt.plot(x, x, marker=markers[1], color=colors[1], label='circles')
_, labels = ax.get_legend_handles_labels()
def dupe_legend(label, color):
line = Line2D([0], [0], linestyle='none', mfc='black',
mec=color, marker=r'$\mathregular{{{}}}$'.format(label))
return line
duplicates = [dupe_legend(leg, color) for leg, color in zip(new_legends, colors)]
ax.legend(duplicates, labels, numpoints=1, markerscale=2, fontsize=16)
plt.show()
