Я рисую диаграмму рассеяния, используя matplotlib в python. Я хочу, чтобы цвет точки на основе некоторой функции, например, так:Пользовательское цветовое сопоставление на основе функции в matplotlib
import matplotlib.pyplot as plt
def color(x, y):
# based on some rules, return a color
if(condition):
return 'red'
else:
return 'blue'
plt.scatter(index, data) #c= something?
Я знаю функции matplotlib.from_levels_and_colors
, но проблема в том, что отображение не основано на уровне значений на х или y. Существует третье значение, связанное с каждой точкой данных, которая вычисляется функцией, и именно это я хочу покрасить точки на основе.
Есть ли способ сделать это?
Хотя я не закончил использовать этот способ, я согласен с ним, поскольку он чище, чем мой путь – bobroxsox