Сделать линейку маркеров разного цвета - PullRequest
0 голосов
/ 15 марта 2020

Я хочу отметить определенные индексы на линейном графике. Я сослался на следующий вопрос о переполнении стека и написал следующее:

plt.plot(range(len(y)), y, '-bD', markevery=rare_cases, label='%s' % target_var_name)

Однако это приводит к следующему: enter image description here

Как сохранить линейный график синим, а сделать маркеры красным?

1 Ответ

0 голосов
/ 15 марта 2020

Из документации plt.plot :

matplotlib.pyplot.plot (* args, scalex = True, scaley = True, данные = Нет, ** kwargs )

Функция принимает **kwargs

** свойства kwargsLine2D, дополнительные kwargs используются для указания свойств, таких как метка линии (для авто-легенд), ширины линии, сглаживания , цвет маркера

[...]

Вот список доступных свойств Line2D:

[...]

markeredgecolor or mec    color
markeredgewidth or mew    float
markerfacecolor or mfc    color
markerfacecoloralt or mfcalt  color

Таким образом, вы можете указать markerfacecolor и markeredgecolor в качестве аргументов ключевых слов:

x = np.random.randint(0,10,5)
y = np.random.randint(0,10,5)

plt.plot(x, y, '-bD',  c='blue', markerfacecolor='red', markeredgecolor='k')

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...