As an update and to complement Alex's answer, this option is not working properly using seaborn
sns.scatterplot(
data=tips,
x="total_bill",
y="tip",
c=kernel,
cmap="viridis",
ax=ax,
)
Use instead:
plt.scatter(tips["total_bill"], tips["tip"], c=kernel, cmap='viridis')