plt.plot如何调整点的大小
时间: 2023-10-13 13:21:29 浏览: 77
可以使用参数 `s` 来调整点的大小。例如:
```python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
sizes = [20, 40, 60, 80, 100]
plt.scatter(x, y, s=sizes)
plt.show()
```
在上面的例子中,我们使用 `sizes` 列表来设置每个点的大小,这个列表的长度必须与数据点的数量相同。
相关问题
plt.plot 调整图像大小
plt.plot函数用于绘制折线图,它并不能直接调整图像的大小。如果你希望调整图像的大小,可以使用plt.figure函数来设置。例如,可以在plt.figure函数中指定参数figsize来设置图像的大小,具体代码如下:
plt.figure(figsize=(宽度, 高度))
其中,宽度和高度可以根据需要进行调整,单位是英寸。这样就可以在绘制折线图之前设置好图像的大小。
# 绘制损失函数曲线 plt.plot(train_losses, label='Train Loss') plt.plot(test_losses, label='Test Loss') plt.ylim([0, 1]) # 设置y轴范围为0~1 plt.legend() plt.show() # 绘制准确率曲线 plt.plot(train_accs, label='Train Acc') plt.plot(test_accs, label='Test Acc') plt.ylim([0, 1]) # 设置y轴范围为0~1 plt.legend() plt.show() 使曲线平滑
为了使曲线平滑,可以使用`plot()`函数的`smooth`参数,它可以控制曲线的平滑程度。可以将`smooth`参数设置为一个大于0的整数,代表对曲线进行平均滤波的窗口大小。较大的窗口大小会导致曲线更平滑,但可能会使曲线更加模糊。
以下是修改后的代码,将`plot()`函数的`smooth`参数设置为10:
``` python
import matplotlib.pyplot as plt
train_losses, train_accs, test_losses, test_accs = [], [], [], []
for epoch in range(100):
train_loss, train_acc = train(model, train_loader, criterion, optimizer)
test_loss, test_acc = test(model, test_loader, criterion)
train_losses.append(train_loss)
train_accs.append(train_acc)
test_losses.append(test_loss)
test_accs.append(test_acc)
print('Epoch: {} Train Loss: {:.4f} Train Acc: {:.4f} Test Loss: {:.4f} Test Acc: {:.4f}'.format(
epoch, train_loss, train_acc, test_loss, test_acc))
# 绘制损失函数曲线
plt.plot(train_losses, label='Train Loss', smooth=10)
plt.plot(test_losses, label='Test Loss', smooth=10)
plt.ylim([0, 1]) # 设置y轴范围为0~1
plt.legend()
plt.show()
# 绘制准确率曲线
plt.plot(train_accs, label='Train Acc', smooth=10)
plt.plot(test_accs, label='Test Acc', smooth=10)
plt.ylim([0, 1]) # 设置y轴范围为0~1
plt.legend()
plt.show()
```
这里将`plot()`函数的`smooth`参数设置为10,来对损失函数和准确率的曲线进行平滑处理。根据实际情况,可以适当调整`smooth`参数的大小,以得到更好的平滑效果。
阅读全文