функциональность аргумента c в функции scatter() matplotlib для случайного обхода

#python #matplotlib #arguments #scatter

#python #matplotlib #аргументы #scatter

Вопрос:

У меня возникают проблемы с различением различий, когда я передаю разные списки в параметр аргумента scatter () c.

Для сеанса случайного обхода, состоящего, скажем, из 10 шагов, у меня есть список координат x (x_values), список координат y (y_values) и список чисел от 0 до 9 (point_numbers). Для списков x_values и y_values сгенерированы случайные числа. Когда я передаю x_values в аргумент c, мои графики окрашиваются от белого до темно-синего, слева направо. Когда я передаю y_values, график окрашивается снизу вверх. Однако, когда я передаю список point_numbers, график окрашивается начиная с начальной точки в случайном обходе, за которой следует следующая точка, которая немного темнее, и так далее, и так далее, пока не достигнет последней точки в обходе, где она самая темная.

 plt.scatter(x_values, y_values, c=x_values, cmap=plt.cm.Blues, s=15)
  

Вышеуказанные цвета слева направо.

 plt.scatter(x_values, y_values, c=y_values, cmap=plt.cm.Blues, s=15)
  

Вышеуказанные цвета отображаются снизу вверх.

 plt.scatter(x_values, y_values, c=point_numbers, cmap=plt.cm.Blues, s=15)
  

И, наконец, приведенный выше график окрашивается от первой точки обхода до следующей и так далее.

Что я хочу знать, так это то, что происходит за кулисами, что позволяет matplotlib раскрашивать слева направо и снизу вверх с помощью x_values и y_values соответственно? Также, самое главное, что происходит, когда я передаю список чисел (point_numbers), который строго содержит только цифры 0-9, в c, и он окрашивается при пошаговом обходе в отличие от того, что он делает с x_values и y_values?

Комментарии:

1. Matplotlib не раскрашивает слева направо или снизу вверх. Он просто принимает значение из списка, который вы предоставляете c , и принимает цвет из цветовой карты, который соответствует доле этого значения, нормализованной между минимальным и максимальным значениями из всего списка.

2. Большое вам спасибо, это имеет гораздо больше смысла, хорошего вечера!