Python 如何为包含不同长度变量的散点图中的不同点指定不同的颜色?
我正在尝试使用python matplotlib绘制具有不同可变长度的散点图。对于以下数据Python 如何为包含不同长度变量的散点图中的不同点指定不同的颜色?,python,excel,matplotlib,colors,statistics,Python,Excel,Matplotlib,Colors,Statistics,我正在尝试使用python matplotlib绘制具有不同可变长度的散点图。对于以下数据 Days = [1,2,3] Values = ([2,3,4,5],[3,4,5,6,7],[2,3]) 我可以用下面的程序画出所有的点 w = [[Days[i]] * len(Values[i]) for i in range(len(Values))] x_to_plot = [item for sublist in w for item in sublist] y_to_plot = [it
Days = [1,2,3]
Values = ([2,3,4,5],[3,4,5,6,7],[2,3])
我可以用下面的程序画出所有的点
w = [[Days[i]] * len(Values[i]) for i in range(len(Values))]
x_to_plot = [item for sublist in w for item in sublist]
y_to_plot = [item for sublist in Values for item in sublist].
如何为几个点指定不同的颜色,使所有其他点保持相同的颜色 您可以使用
scatter
的c
参数根据颜色贴图为点着色。例如,要将y==5-x
的所有点涂成红色,请使用
import matplotlib.pyplot as plt
Days = [1,2,3]
Values = ([2,3,4,5],[3,4,5,6,7],[2,3])
w = [[Days[i]] * len(Values[i]) for i in range(len(Values))]
x = [item for sublist in w for item in sublist]
y = [item for sublist in Values for item in sublist]
c = [0 if i+j == 5 else 1 for i, j in zip(x,y)]
plt.scatter(x,y, c=c, cmap="bwr_r")
plt.show()
您可以手动指定颜色,例如使用红点的
plt.plot(一些点,.r')
。然后你只需要将你的数据分成你需要的两组,并用两种不同的颜色分别绘制它们。你的程序,如图所示,不会绘制任何东西。