在 python 中分散数据并绘制决策边界

scatter data and draw decision boundary in python

我有这个代码,我已经加载了鸢尾花数据集,将数据分散成两个 类(以一种对所有的形式)我设计了一个单层感知器,W_ 是权重和代码作图如下:

x = train_s[: , 1].T
y = train_s[: , 2].T
label = train_t
colors = ['green','blue']
plt.scatter(x, y, c=label, cmap=matplotlib.colors.ListedColormap(colors))
x1 = np.linspace(4,8)
y1 = np.linspace(1.5,5)
X,Y = np.meshgrid(x1,y1)
plt.plot([0,W_[1]],[0,W_[2]])
plt.show()

但是结果图是这样的:

如何解决这个问题?

您想用散点图穿过这条绘图线:plt.plot([0,W_[1]],[0,W_[2]])? 如果是这样,则假设问题在此范围图中。 您的散点图具有以下轴范围: X: 4~8 Y:1.5~5 但是你的线图有范围 X:[0,W_[1]] Y:[0,W_[2]] 您应该“'normalize'”这两个范围以获得良好的图形合并。