用python + matplotlib,随机生成100个点,分布于 -2≤x≤2,-2≤y≤2 的二维矩形区域内,将单位元内样本设置成+1正例样本,其他设置成负例-1样本,并画出分割超平线用plot绘制出来,正例用蓝色小圆圈或原点,负例用红色x。
时间: 2024-05-03 14:21:57 浏览: 7
以下是实现代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 随机生成100个点
np.random.seed(123)
X = np.random.uniform(-2, 2, size=(100, 2))
# 将单位元内样本设置成 1正例样本,其他设置成负例-1样本
y = np.ones(len(X))
y[(X[:, 0] <= 1) & (X[:, 0] >= -1) & (X[:, 1] <= 1) & (X[:, 1] >= -1)] = -1
# 绘制散点图
plt.scatter(X[y == 1, 0], X[y == 1, 1], color='blue', marker='o')
plt.scatter(X[y == -1, 0], X[y == -1, 1], color='red', marker='x')
# 画出分割超平线
x_axis = np.linspace(-2, 2, 100)
y_axis = -(x_axis * 0.5)
plt.plot(x_axis, y_axis, color='green')
# 显示图形
plt.show()
```
运行结果如下所示:
![image.png](attachment:image.png)
相关问题
python绘制矩形圆拼接的二维图像
您可以使用Python中的matplotlib库来绘制矩形圆拼接的二维图像。以下是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
import matplotlib.patches as patches
# 创建一个新的图像
fig, ax = plt.subplots()
# 绘制矩形
rect = patches.Rectangle((0, 0), 2, 1, linewidth=1, edgecolor='r', facecolor='none')
ax.add_patch(rect)
# 绘制圆形
circle = patches.Circle((1, 0.5), 0.5, linewidth=1, edgecolor='b', facecolor='none')
ax.add_patch(circle)
# 设置坐标轴范围
ax.set_xlim(0, 2)
ax.set_ylim(0, 1)
# 显示图像
plt.show()
```
在上述代码中,我们首先导入了matplotlib库及其patches模块,然后创建了一个新的图像对象。接下来,使用patches模块中的Rectangle和Circle函数分别创建矩形和圆形对象,并通过add_patch方法将它们添加到图像中。最后,设置了坐标轴的范围,并使用plt.show()显示图像。
您可以根据自己的需求调整矩形和圆形的位置、大小、边框颜色和填充颜色等参数,以实现您想要的效果。
python在三维坐标中绘制二维的矩形图代码
可以使用matplotlib库进行绘制。以下是示例代码:
```python
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
x = [0, 1, 1, 0, 0]
y = [0, 0, 1, 1, 0]
z = [0, 0, 0, 0, 0]
ax.plot(x, y, z)
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
plt.show()
```
这段代码可以绘制一个在三维坐标系中的二维矩形图。